strstr函数例子
时间: 2023-11-16 17:59:16 浏览: 118
strstr函数是一个用于在字符串中查找子字符串的函数。它的语法如下:
```const char *strstr(const char *STR1, const char *STR2)```
其中,STR1是要在其中查找的字符串,STR2是要查找的子字符串。如果找到了子字符串,函数将返回一个指向该子字符串的指针;如果没有找到,函数将返回一个空指针。
下面是一个strstr函数的例子:
```c
#include <stdio.h>
#include <string.h>
int main () {
const char *str1 = "This is a sample string";
const char *str2 = "sample";
char *result;
result = strstr(str1, str2);
printf("The substring is: %s\n", result);
return 0;
}
```
在这个例子中,我们定义了两个字符串str1和str2,然后使用strstr函数在str1中查找str2。如果找到了str2,函数将返回一个指向该子字符串的指针,我们将其存储在result变量中并打印出来。输出结果为"The substring is: sample string",因为我们找到了"sample"这个子字符串,并返回了指向它的指针。
相关问题
strstr函数使用例子
`strstr()` 函数是 C 标准库中的字符串处理函数,它用于在一个字符串(也称为"haystack")中查找另一个字符串("needle")第一次出现的位置。如果找到匹配,它会返回指向该子串开始位置的指针;如果没有找到,就返回 `NULL`。
一个简单的使用例子如下:
```c
#include <string.h>
char str[] = "Hello, World!";
const char* substr = "World";
// 使用 strstr 查找子串
size_t pos = strstr(str, substr) - str; // 注意减去 str 的地址获取实际偏移
if (pos != NULL) {
printf("Substring found at position %ld\n", (long)pos); // 输出子串的位置
} else {
printf("Substring not found.\n");
}
```
在这个例子中,`strstr(str, substr)` 返回的是 "World" 在 "Hello, World!" 中首次出现的位置,即从数组 str 开始算起的第 7 个字符处。如果找不到子串,则返回 `NULL`,因此判断条件检查了这个结果。
C语言 strstr函数使用例子
下面是一个使用 C 语言中的 `strstr` 函数的示例:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[] = "Hello, World!";
char str2[] = "World";
char *result;
result = strstr(str1, str2);
if (result == NULL)
{
printf("'%s' is not found in '%s'\n", str2, str1);
}
else
{
printf("'%s' is found in '%s' at position %ld\n", str2, str1, result - str1);
}
return 0;
}
```
在此示例中,我们首先定义了两个字符串 `str1` 和 `str2`,并声明了一个指针变量 `result`。然后,我们使用 `strstr` 函数在 `str1` 中查找 `str2`。如果 `str2` 在 `str1` 中找到了,`strstr` 函数将返回指向 `str2` 在 `str1` 中第一次出现的位置的指针;否则,它将返回 `NULL`。
在这个示例中,我们使用 `if` 语句来检查 `result` 是否为 `NULL`。如果是,我们打印一条消息,指出 `str2` 在 `str1` 中未找到;否则,我们打印一条消息,指出 `str2` 在 `str1` 中的位置。
输出应该如下所示:
```
'World' is found in 'Hello, World!' at position 7
```
阅读全文