strstr
`strstr` 是一个常用的字符串函数,用于在 C 语言中查找子字符串在主字符串中的首次出现位置。它的原型是 `char *strstr(const char *haystack, const char *needle)`。
函数参数说明:
* `haystack`:这是主字符串,我们在这个字符串中查找子字符串。
* `needle`:这是我们想要在主字符串中找到的子字符串。
函数返回值:
* 如果找到子字符串,则返回一个指针,该指针指向主字符串中子字符串的首次出现位置。
* 如果没有找到子字符串,则返回 `NULL`。
示例代码:
```c
#include
#include
int main() {
char str[] = "Hello, World!";
char *ptr = strstr(str, "World");
if (ptr) {
printf("Found at position: %ld\n", ptr - str); // 输出子字符串在主字符串中的位置(偏移量)
} else {
printf("Not found.\n");
}
return 0;
}
```
在上述示例中,`strstr` 函数被用于查找子字符串 "World" 在主字符串 "Hello, World!" 中的位置。如果找到,它会输出子字符串的位置(偏移量)。如果没有找到,它会输出 "Not found."。
strstr
`strstr` 是一个标准的 C 语言库函数,用于查找一个字符串在另一个字符串中的首次出现位置。它的原型如下:
```c
const char *strstr(const char *haystack, const char *needle);
```
* `haystack` 是你想要搜索的字符串(通常被称为主字符串)。
* `needle` 是你想要在主字符串中找到的子字符串。
函数的工作方式是,从 `haystack` 的开始位置开始搜索 `needle` 的内容。如果找到了匹配的子字符串,函数会返回一个指向 `haystack` 中首次出现 `needle` 的位置的指针。如果未找到匹配的子字符串,函数会返回 `NULL`。
例如:
```c
const char *str = "Hello, world!";
const char *result = strstr(str, "world");
if (result) {
printf("Found 'world' at position: %ld\n", result - str); // 输出找到子字符串的位置(从字符串开始算起)
} else {
printf("Not found.\n"); // 未找到子字符串
}
```
在上面的例子中,因为 "world" 在 "Hello, world!" 中存在,所以 `strstr` 会返回一个非 `NULL` 的指针,并且我们可以输出子字符串在原始字符串中的位置。
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。