在 C 语言中,strstr 函数用于查找一个字符串中是否存在另一个字符串。它的主要功能是搜索指定的子字符串,并返回该子字符串在目标字符串中第一次出现的位置的指针。如果没有找到子字符串,则返回 NULL。
详细说明:
-
头文件:
strstr定义在<string.h>中。 -
函数原型:
cchar *strstr(const char *haystack, const char *needle); -
参数说明:
haystack:目标字符串,即在这个字符串中进行查找。needle:要查找的子字符串。
-
返回值:
- 如果找到子字符串,则返回指向该子字符串首次出现位置的指针。
- 如果没有找到子字符串,则返回
NULL。 - 如果
needle是空字符串,则返回haystack。
示例代码:
c
#include <stdio.h>
#include <string.h>
int main() {
const char *text = "Hello, world!";
const char *substr = "world";
char *result = strstr(text, substr);
if (result != NULL) {
printf("找到了子字符串:%s\n", result);
} else {
printf("没有找到子字符串。\n");
}
return 0;
}
在这个示例中,如果目标字符串 text 中包含 substr,那么 strstr 将返回从 substr 开始的部分字符串的地址,否则返回 NULL。