strstr 使用说明
时间: 2024-05-31 22:06:01 浏览: 139
strstr 是 C/C++ 中的一个字符串函数,用于查找字符串中第一次出现目标子串的位置,并返回该位置的指针。它的使用方式如下:
```c
char* strstr(char* str1, const char* str2);
```
其中,str1 是要查找的字符串,str2 是目标子串。函数返回值是指向在 str1 中第一次出现 str2 的指针。如果没有找到目标子串,函数返回 NULL。
下面是一个使用 strstr 函数的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main () {
const char str1[] = "CSDN AI assistant C知道";
const char str2[] = "AI";
char *result;
// 在 str1 中查找 str2
result = strstr(str1, str2);
if(result) {
printf("找到子串 '%s',在原字符串中的位置是 %ld\n", str2, result-str1+1);
} else {
printf("未找到子串 '%s'\n", str2);
}
return 0;
}
```
输出结果为:
```
找到子串 'AI',在原字符串中的位置是 6
```
相关问题
strstr函数的使用
strstr函数是C语言中的一个字符串处理函数,用于在一个字符串中查找另一个字符串的出现位置。具体使用方法如下:
1.函数原型
```c
char* strstr(const char* str1, const char* str2);
```
2.函数参数
- str1:要查找的字符串。
- str2:要查找的子字符串。
3.函数返回值
- 如果找到了子字符串,则返回子字符串在原字符串中的首地址。
- 如果没有找到子字符串,则返回NULL。
4.示例代码
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "This is a simple string hello world!";
char* pch;
pch = strstr(str, "string");
if (pch != NULL) {
printf("%s\n", str);
printf("%s\n", pch);
strncpy(pch, "sifang", 6);
}
printf("%s\n", str);
printf("%s\n", pch);
return 0;
}
```
5.示例说明
以上示例代码中,首先定义了一个字符串str,然后使用strstr函数查找字符串中是否包含子字符串"string",如果找到了,则将子字符串替换为"sifang"。最后输出替换后的字符串和子字符串的地址。
strstr函数
strstr函数是C标准库中的一个函数,用于在一个字符串中查找另一个字符串的第一次出现。该函数的原型为:
```
char *strstr(const char *str1, const char *str2);
```
其中,str1表示要查找的字符串,str2表示要搜索的字符串。该函数返回一个指向第一次出现字符串 str2 的指针,如果未找到,则返回 NULL。
例如,以下代码可以在字符串 str 中查找第一次出现子串 substr 的位置:
```
char str[] = "hello world";
char substr[] = "world";
char *result = strstr(str, substr);
if (result != NULL) {
printf("Found at position %ld\n", result - str);
} else {
printf("Not found\n");
}
```
输出结果为:
```
Found at position 6
```
说明子串 "world" 在字符串 "hello world" 中的位置是从第 6 个字符开始的。
阅读全文