strstr()函数用于:查找子字符串
目录
函数介绍
用法示例
函数讲解
实现函数
事例展示
函数介绍
函数声明:char *strstr(const char *str1, const char *str2)
头 文 件:#include <string.h>
返 回 值:返回值为char * 类型( 返回指向str1中第一次出现的str2的指针);如果str2不是str1的一部分,则返回空指针。
用法示例
#include <stdio.h>#include <string.h> int main(){char str[] = "This is a simple string";char* pch;pch = strstr(str, "simple");if (pch != NULL)strncpy(pch, "sample", 6);puts(str);return 0;}
函数讲解
实现函数
char* My_strstr(const char* str1, const char* str2){assert(str1 && str2);const char* s1 = str1;const char* s2 = str2;const char* p = str1;while (*p!='\0'){s1 =p ;s2 = str2;while (*s1 != '\0' && *s2 != '\0' && *s1 == *s2){s1++;s2++;}if (*s2 == '\0'){return (char*)p;}p++;}return NULL;}
事例展示
#include <stdio.h>#include <string.h> #include<assert.h>char* My_strstr(const char* str1, const char* str2){assert(str1 && str2);const char* s1 = str1;const char* s2 = str2;const char* p = str1;while (*p!='\0'){s1 =p ;s2 = str2;while (*s1 != '\0' && *s2 != '\0' && *s1 == *s2){s1++;s2++;}if (*s2 == '\0'){return (char*)p;}p++;}return NULL;} int main(){char str[] = "This is a simple string";char* pch;pch = My_strstr(str, "simple");if (pch != NULL)strncpy(pch, "sample", 6);puts(str);return 0;}
strstr函数详解 看这一篇就够了-C语言(函数讲解 函数实现 使用用法举例 作用 自己实现函数 )