C语言判断一个字符串是否是另一个字符串的子串
时间: 2024-10-22 16:01:10 浏览: 76
在C语言中,可以使用`strstr()`函数来判断一个字符串是否是另一个字符串的子串。这个函数在 `<string.h>` 头文件中定义,它的原型如下:
```c
char *strstr(const char *haystack, const char *needle);
```
`haystack` 是主字符串(也称为“haystack”),`needle` 是要查找的子字符串(也称为“needle”)。如果 `needle` 存在于 `haystack` 中,`strstr()` 函数会返回指向 `needle` 首次出现的位置的指针;如果没有找到,则返回 `NULL`。
以下是一个简单的例子:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello, World!";
char str2[] = "World";
if (strstr(str1, str2) != NULL) {
printf("'%s' is a substring of '%s'\n", str2, str1);
} else {
printf("'%s' is not a substring of '%s'\n", str2, str1);
}
return 0;
}
```
在这个例子中,如果输出是 "World is a substring of Hello, World!",那么我们就确认了 `str2` 是 `str1` 的子串。
阅读全文