strstr函数的用法详解
时间: 2024-11-02 22:08:20 浏览: 17
`strstr()`是C语言标准库中的字符串处理函数,全称为"string search routine",它用于在一个字符串(haystack)中查找另一个字符串(needle)。该函数的原型通常定义在`string.h`头文件中,其语法如下:
```c
char *strstr(const char *haystack, const char *needle);
```
这里有两个参数:
1. `haystack`: 要搜索的原始字符串(也称为"haystack"),通常是整个程序中的一段文本。
2. `needle`: 搜索的目标字符串,我们称之为"substring"。
返回值:
如果找到了`needle`在`haystack`中的首次出现,`strstr()`将返回指向第一次出现的`needle`的指针;如果没有找到,函数将返回`NULL`。
例如:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, world! This is a test.";
char* found = strstr(str, "test");
if (found) {
printf("Found 'test' at position %ld.\n", (long)(found - str));
} else {
printf("Substring not found.\n");
}
return 0;
}
```
在这个例子中,`strstr()`会在`str`中寻找"test",并打印出它的位置(从字符串开始算起的字节索引)。
阅读全文