1. 函数介绍
const char * strstr ( const char * str1, const char * str2 );
功能:
strstr
函数,查找str2
指向的字符串在str1
指向的字符串中第一次出现的位置。
简而言之:在一个字符串中查找子字符串。
strstr
的使用得包含<string.h>
参数:
str1
:指针,指向了被查找的字符串
str2
:指针,指向了要查找的字符串
返回值:
- 如果str1指向的字符串中存在str2指向的字符串,那么返回第一次出现位置的指针
- 如果str1指向的字符串中不存在str2指向的字符串,那么返回NULL
2. 代码演示
/* strstr example */
#include <stdio.h>
#include <string.h>
int main()
{
char str[] = "This is a simple string";
char* pch;
pch = strstr(str, "simple");
if (pch != NULL)
printf("%s\n", pch);
else
printf("查找的字符串不存在\n");
return 0;
}
3. 扩展
strstr函数的实现有多种,可以暴力查找,也有一种高效一些的算法:KMP,有兴趣可以去学习。
可以尝试模拟实现strstr函数。
完