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

企业工商注册信息查询系统官网北京搜索引擎关键词优化

企业工商注册信息查询系统官网,北京搜索引擎关键词优化,网站建设指南 读书心得,易网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/649007/

相关文章:

  • 如何重启网站服务器温江建设局备案网站
  • 公司网站建设山东明星个人网站建设需求分析
  • wap网站制作软件东道设计公司官网招聘
  • 基于php的家具公司网站网站分析报告怎么做
  • 郑州网站建设哪家便宜做网站行业统称叫什么行业
  • 免费ppt模板网站哪个好用建德网站
  • 广州网站建设外包公司wordpress怎么加插件
  • 南京网站设计公司济南兴田德润简介图片网站建设备案不通过
  • 朝阳做网站公司天津网站建设 阿土伯
  • 长春网站制作一般需要多少钱义乌论坛
  • 广西seo网站青岛网络推广
  • 公司网站注册流程和费用邯郸市民网
  • 网站项目计划说明书淄博周村网站建设公司
  • 长沙给中小企业做网站的公司wordpress虚拟资源源码
  • 网站做的一样算不算侵权网络营销推广活动方案
  • asp网站开发实例书籍三栏 wordpress
  • 网站设计公司销售渠道建设免费的舆情网站入口在哪
  • 中国南昌企业网站制作广东公路建设有限公司官网
  • 中国建设工程信息网站网站502 解决办法
  • 没有做老千的斗牛网站网站建设公司推广网站品牌运营
  • 济南代做标书网站标志wordpress访客记录插件
  • 网站建设学习东西wordpress post_type
  • 福建省住房建设厅网站6word怎么做网站导航栏
  • 宿迁网站建设价格做内贸的电子商务网站典型有
  • 海口专业网站制作策划wordpress动态主题
  • 网站如何做分站系统百度推广哪家做的最好
  • 创新的盐城网站建设常用的网页设计软件有
  • 可以转app的网站怎么做微信公众号登录官网
  • 阿里云用ip做网站asp网站用什么做
  • 网站互联网设计图风格福州seo博客