C语言中如何判断字符串是否包含另一个字符串
时间: 2023-03-05 07:27:00 浏览: 218
在C语言中,可以使用标准库函数`strstr`来判断一个字符串是否包含另一个字符串。`strstr`函数可以在一个字符串中查找指定的子字符串,并返回子字符串在父字符串中第一次出现的位置指针,如果父字符串中不包含子字符串,则返回空指针。
以下是使用`strstr`函数判断一个字符串是否包含另一个字符串的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello world";
char str2[] = "world";
if (strstr(str1, str2) != NULL) {
printf("str1 contains str2\n");
} else {
printf("str1 does not contain str2\n");
}
return 0;
}
```
在上面的示例代码中,`strstr(str1, str2)`函数返回的指针非空,因此判断`str1`包含`str2`。如果`strstr(str1, str2)`返回空指针,则说明`str1`不包含`str2`。
相关问题
c语言判断字符串中是否包含某个字符串,自己写个函数
下面是一个简单的C语言函数,用于判断字符串是否包含另一个字符串:
```c
#include <stdio.h>
#include <string.h>
int str_contains(char *str, char *sub_str) {
if (strstr(str, sub_str) != NULL) {
return 1;
} else {
return 0;
}
}
int main() {
char str1[] = "hello world";
char str2[] = "world";
char str3[] = "foo";
printf("str1 contains str2: %d\n", str_contains(str1, str2));
printf("str1 contains str3: %d\n", str_contains(str1, str3));
return 0;
}
```
在上面的示例中,我们使用了C标准库中的`strstr`函数来判断一个字符串是否包含另一个字符串。如果`strstr`返回`NULL`,则说明字符串不包含该子字符串,反之则说明包含。
我们将`strstr`的返回值与`NULL`进行比较,然后返回一个整数值,表示字符串是否包含子字符串。在`main`函数中,我们分别测试了两个字符串是否包含另一个字符串。
用C语言判断字符串中是否包含SUEP四个连续的字母
可以使用C语言中的字符串处理函数strstr(),该函数可以在一个字符串中查找另一个字符串,并返回第一次出现该字符串的位置。具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
char* pos = strstr(str, "SUEP");
if (pos != NULL) {
printf("该字符串中包含SUEP!\n");
} else {
printf("该字符串中不包含SUEP!\n");
}
return 0;
}
```
这段代码会提示用户输入一个字符串,然后使用strstr()函数在其中查找SUEP字符串,如果找到了则说明该字符串中包含SUEP,否则就不包含。