您的位置:首页 > 编程语言 > C语言/C++

C 语言中strstr函数实例详解

2017-07-03 14:22 621 查看

C 语言中strstr函数实例详解

strstr函数

       strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL

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

库中实现的strstr

#include <stdio.h>
#include <string.h>
int main ()
{
char str[] ="This is a simple string";
char * pch;
pch = strstr (str,"simple");
strncpy (pch,"sample",6);
puts (str);
return 0;
}

模拟实现strstr函数

const char* My_strstr(const char* str1, const char* str2)
{
assert(str1);
assert(str2);
while (*str1 != '\0')
{
const char* p1 = str1;
const char* p2 = str2;
while ((*p1 != '\0') && (*p2 != '\0') && (*p1 == *p2))
{
++p1;
++p2;
}
if (*p2 == '\0')
{
return str1;
}
++str1;
}
return NULL;
}
int main()
{
char str1[] = "a wwww qqqqqqqqqqqqqqq";
char str2[] = "www";
printf("%s\n", My_strstr(str1, str2));
system("pause");
return 0;
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C语言 strstr函数