用cpp举一个strchr函数和strstr函数的例子并写出运行结果
时间: 2025-01-06 10:51:59 浏览: 7
`strchr()` 函数在 C++ 中用于在一个字符串中查找指定字符首次出现的位置,如果找到则返回该字符的指针,否则返回 `NULL`。而 `strstr()` 函数则是在一个字符串中查找另一个字符串首次出现的位置,同样返回指向第一次出现位置的指针,如果没有找到则返回 `NULL`。
下面是一个 `strchr()` 的例子:
```cpp
#include <cstring>
#include <iostream>
int main() {
char str[] = "Hello, World!";
char target = 'W';
size_t pos = strchr(str, target);
if (pos != NULL) {
std::cout << "字符 'W' 首次出现在位置: " << static_cast<int>(pos - str) + 1 << std::endl;
} else {
std::cout << "字符 'W' 没有在字符串中找到" << std::endl;
}
return 0;
}
```
运行结果会显示 "字符 'W' 首次出现在位置: 7",因为 'W' 在第七个字符处(包括空格)。
接下来是一个 `strstr()` 的例子:
```cpp
#include <cstring>
#include <iostream>
int main() {
char searchStr[] = "Hello,";
char targetStr[] = "World!";
char* found = strstr(searchStr, targetStr);
if (found) {
std::cout << "子串 \"World!\" 首次出现在搜索字符串 \"Hello,\" 的位置: " << static_cast<int>(found - searchStr) << std::endl;
} else {
std::cout << "子串 \"World!\" 在搜索字符串 \"Hello,\" 中未找到" << std::endl;
}
return 0;
}
```
运行结果会显示 "子串 \"World!\" 首次出现在搜索字符串 \"Hello,\" 的位置: 6",因为 "World!" 从第六个字符开始。
阅读全文