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

南宁月嫂网站建设网站优化排名怎么做

南宁月嫂网站建设,网站优化排名怎么做,四大门户网站对比分析,医院网站建设建议目录 一,strstr函数简介 二,strstr函数实现原理 三,strstr函数的用法 四,strstr函数的注意事项 五,strstr函数的模拟实现 一,strstr函数简介 strstr函数是在一个字符串中查找另一个字符串的第一次出现&…

目录

一,strstr函数简介

二,strstr函数实现原理

三,strstr函数的用法

四,strstr函数的注意事项

五,strstr函数的模拟实现


一,strstr函数简介

strstr函数是在一个字符串中查找另一个字符串的第一次出现,并返回该位置的指针,如果找不到,则返回NULL

🍂函数头文件: 

#include <string.h>

 🍂函数原型:

const char * strstr ( const char * str1, const char * str2 );

 str1:被查找的目标字符串

 str2:要查找的对象字符串

二,strstr函数实现原理

strstr函数的实现可以通过遍历字符串的方式来查找str2字符串的出现位置。

1,遍历str1字符串,逐个字符与str2字符串进行比较。

2,如果str1字符串的当前字符与str2字符串的第一个字符相等,则继续比较后续字符。

3,如果str1字符串中的连续字符str2字符串完全匹配,则返回该位置的指针。

4,如果str1字符串遍历完毕仍未找到匹配,则返回NULL。 

三,strstr函数的用法

#include <stdio.h>
#include <string.h>int main()
{char str1[] = "hello world!";char str2[] = "world!";char* ret = strstr(str1, str2);if (ret == NULL)printf("找不到!\n");elseprintf("%s\n", ret);return 0;
}

🎈运行结果: 

🎈释义: 

上述代码中,我们在字符串"hello world!"中查找字符串"world!"的第一次出现,并打印位置。如果找到了,则打印出从第一次找到的那个位置开始后面的所有字符;如果未找到,则打印“找不到”。

四,strstr函数的注意事项

在使用strstr函数时,需要注意以下几点:

1,函数返回的指针指向的是str1字符串中匹配到的位置,因此可以通过指针的偏移量来得到具体的位置。

#include <stdio.h>
#include <string.h>int main()
{char str1[] = "hello world!";char str2[] = "world!";char* ret = strstr(str1, str2);if (ret == NULL)printf("找不到!\n");elseprintf("%d\n", ret - str1);return 0;
}

 🎈运行结果: 

 🎈释义:

上述代码中,我们在字符串str1中查找字符串str2的第一次出现,并打印位置。如果找到了,则打印出位置的偏移量;如果未找到,则打印“找不到”。

2,如果需要查找字符串的最后一次出现,可以配合使用strstr函数。

3,函数的参数str1和str2都应该是以'\0'结尾的字符串,否则可能会导致不可预料的结果。 

五,strstr函数的模拟实现

#include <stdio.h>
#include <string.h>
#include <assert.h>const char* my_strstr(const char* str1, const char* str2)
{const char* cp;//记录开始匹配的位置const char* s1;//遍历str1指向的字符串const char* s2;//遍历str2指向的字符串assert(str1 && str2);//处理空指针的情况if (*str2 == '\0')//如果str2为空字符串,则返回str1return str1;cp = str1;while (*cp){s1 = cp;s2 = str2;while (*s1 && *s2 && *s1 == *s2)//在str1中找到str2的第一个字符{s1++;s2++;}if (*s2 == '\0')//如果找到了str2的所有字符,则返回该位置的指针return cp;cp++;//否则,继续在str1中寻找下一个可能的位置}return NULL;//如果未找到匹配的位置,则返回NULL
}int main()
{char str1[] = "hello world!";char str2[] = "world!";const char* ret = my_strstr(str1, str2);if (ret == NULL)printf("找不到!\n");elseprintf("%s\n", ret);return 0;
}
http://www.laogonggong.com/news/25912.html

相关文章:

  • 网站建设 文件源代码约定常用的搜索引擎
  • 果麦传媒的网站怎么做的手机访问另一部手机访问文件
  • 做电影资源网站手机版台州关键词首页优化
  • 日本做蛋糕网站淄博网站推广
  • 汽车网址都有哪些seo这个行业怎么样
  • 做网站的linux程序代码自媒体平台app下载
  • 外贸建站哪家公司好百度网址大全下载到桌面
  • 轻量应用服务器可以做网站吗鸡西seo
  • 做网站学什么语言怎样建立个人网站
  • 搜狐员工做网站的工资多少钱seo网络优化是什么意思
  • 济宁亿峰科技做网站一年多少费用网络营销平台有哪些?
  • 做网站字体规范青岛设计优化公司
  • 丹阳是哪个省zac博客seo
  • 网站在百度的图标显示不正常市场营销七大策略
  • 一品威客网接单平台可靠吗北京seo排名方法
  • 品牌建设架构seo专员招聘
  • 邢台网站制作哪里做今日新闻10条简短
  • 长沙模板建站源码无人在线观看高清视频单曲直播
  • 婚纱网站策划书模板下载知道百度
  • 国外seo网站重要新闻
  • so域名的网站有哪些网站免费推广的方法
  • 陕西恒发建设网站关键词搜索查询
  • 黔南州住房和城乡建设局网站网站seo优化方案设计
  • 网站建设厦门如何进行网络推广
  • 做游戏模型参考的网站信息流广告优化师培训
  • 家居企业网站建设方案什么是seo?
  • 怎么创建免费网站吗360摄像头海澳門地区限制解除
  • 企业网站建设目的g3云推广靠谱吗
  • 网站建设-好发信息网seo怎么刷排名
  • 许昌那有做网站网络营销课程