当前位置: 首页 > news >正文

石家庄做网站的公司安卓wordpress源码分析

石家庄做网站的公司,安卓wordpress源码分析,网页设计模板网站免费,上海本地app推荐strstr函数的介绍和模拟实现 strstr函数的介绍 资源来源于cplusplus网站 strstr函数声明: char *strstr( const char *str1, const char *str2 ); 它的作用其实就是: 在字符串str1中查找是否含有字符串str2,如果存在,返回str2在…

strstr函数的介绍和模拟实现

strstr函数的介绍

资源来源于cplusplus网站
在这里插入图片描述

strstr函数声明:
char *strstr( const char *str1, const char *str2 );

它的作用其实就是:
在字符串str1中查找是否含有字符串str2,如果存在,返回str2在str1中第一次出现的地址;否则返回NULL

不难看出它是定位字符串的

strstr函数是在字符串str1中查找是否含有字符串str2,如果存在,返回str2在str1中第一次出现的地址;否则返回NULL。

1.1用法举例

#include<stdio.h>
#include<string.h>//strstr函数的应用
int main()
{char arr1[] = "abbbcdef";char arr2[] = "bbc";printf("%s\n", strstr(arr1, arr2));return 0;
}

1.2结果展示

在这里插入图片描述

2.strstr函数的模拟实现

2.1模拟分析

对strstr函数有了一定了解后,我们开始对strstr函数的模拟—my_strstr函数。
如下图所示,假设有两个字符串,指针str1, str2分别指向字符串首字母。
要在str1中查找str2并打印出来,先判断str1和str2指向的字符是否相等,此时有两种情况:第一种情况指向的字符不相等,str1要指向下一个字符,再判断,如此循环往复,当str1指向的是 ‘\0’ 时,可以判断出str1中不存在str2,此时返回NULL;
第二种情况下指向的字符相等,那么不仅str1要向后读取字符,str2也要向后读取字符,再判断是否相等。
在向后读取字符的过程中,仍有两种情况:1.str1和str2指向的字符一直相等,直到str2指向’\0’,这时可以知道str1中存在str2字符串,返回的是str1中的str2字串的第一个字符地址;
2.str1和str2指向的字符不全相等,例如下图中,*(str1+1) == str2,(str1+2) == (str2+1),(str1+3) != *(str2+2),此时指针str2就要返回到字符串str2首字符的地址,而指针str1需要返回到第一次和str2指向的字符相等的后一个位置,即字符串str1中第二个 ‘b’ 的地址。然后又回到一开始的判断。

(注:字符串名字也是字符串首字符地址。)

在这里插入图片描述

使用strstr时,最终返回str1中第三个字符的地址,打印的是该地址后的字符串

2.2代码实现

const char* my_strstr(const char* str1, const char* str2)
{assert(str1 && str2);const char* s1 = str1;const char* cp = str1;const char* s2 = str2;//如果子字符串是空的直接返回str1的地址if (*str2 == '\0')return str1;while (*cp){s1 = cp;s2 = str2;while (*s1 && *s2 && (*s1 == *s2)){s1++;s2++;}if (*s2 == '\0')return cp;cp++;}return NULL;}
int main()
{char arr1[] = "abbbcdef";char arr2[] = "bbc";const char* ret = my_strstr(arr1, arr2);if (ret != NULL){printf("%s\n",ret);}elseprintf("找不到\n");return 0;
}
http://www.yayakq.cn/news/182177/

相关文章:

  • 网站建设是前端的吗建行手机银行app
  • 可以上传高清图片的网站并做外链营销型网站建设套餐
  • 网站客户运营搜索引擎推广的效果
  • 佛山网络营销网站兰州网络推广制度
  • 陕西交通建设有限公司网站宁波网站推广方式怎么样
  • 传世网站建设大连seo顾问
  • 企业网站备案拍照免费行情网站软件
  • html做的网站怎么发布短视频制作培训班
  • 公司网站建设北京网站建设 都选万维科技
  • 自己怎么搭建个人博客网站新遵义吧
  • php网站建设题目网页设计个人主页图片
  • amp 网站开发描述网站建设的基本流程图
  • 装修公司营销型网站建设旅游网站网页设计模板代码
  • wordpress文章版权主题插件镇江关键词优化
  • 网页设计 参考网站如何让产品吸引顾客
  • 专业的网站建设哪家好长春
  • 电子商务怎么做网站百度制作网站推广
  • 济源市工程建设监理所网站江苏省备案网站
  • 响应式网站文章WordPress用户管理系统
  • 电商建站网页加速器浏览器
  • 个人做网站要买什么域名做网站用什么浏览器
  • 网站什么认证对做电商好开发手机端网站
  • 虚拟网站规划与设计网站内的搜索怎么做的
  • 做销售用的免费发布信息网站中小学网站建设
  • 阿里云可以做网站么网站权重7怎么做
  • 运营型网站wordpress个人展示网站
  • 网站怎么发布河南建设厅网站地址
  • 企业营销网站建设公司做网站多钱
  • 注册网站乱填邮箱住房和城乡建设部政务服务门户网站
  • 网站建设栏目设置表格个人网站设计论文下载