c++ string find 例子,如何使用
时间: 2023-05-22 14:04:50 浏览: 63
可以使用以下代码来使用 c string find 函数:
```
#include <cstdio>
#include <cstring>
int main() {
char str[] = "Hello, world!";
char *result = strstr(str, "world");
if (result == NULL) {
printf("Substring not found\n");
} else {
printf("Substring found at index %ld\n", result - str);
}
return 0;
}
```
在这个例子中,我们定义了一个字符串 "Hello, world!",然后使用 c string 的 `strstr` 函数搜索子字符串 "world"。如果找到了子字符串,它会返回一个指向子字符串在原始字符串中的位置的指针,否则返回 `NULL`。我们使用指针的减法来计算子字符串在原始字符串中的索引。
注意:以上代码是 C++ 代码,如果使用的是纯 C 语言则需要使用 `printf` 函数的格式化字符串 `%ld` 替换为 `%d`。
相关问题
c++ string.find 如何使用
你可以使用字符串的find方法来查找一个子字符串在另一个字符串中的位置。它接收两个参数:要查找的子字符串和要查找的字符串。如果找到了子字符串,它会返回子字符串在字符串中的起始位置。如果没有找到子字符串,它会返回nil。
以下是使用c string.find方法的示例:
```c
char str1[] = "Hello World";
char str2[] = "Wo";
char *result;
result = strstr(str1, str2);
if(result) {
printf("Found substring '%s' starting at index %d\n", str2, result - str1);
} else {
printf("Substring '%s' not found\n", str2);
}
```
这个例子查找字符串"Hello World"中的子字符串"Wo"。如果找到了子字符串,它会输出"Found substring 'Wo' starting at index 6",因为子字符串从字符串的第6个字符开始。
c++ string.find
引用[1]和[3]中的例子展示了如何使用string类的find函数来查找子字符串在原字符串中的位置。在C++中,string类提供了一个名为find的成员函数,它可以在一个字符串中查找另一个子字符串,并返回子字符串在原字符串中的位置。如果找到了子字符串,则返回子字符串的起始位置;如果没有找到,则返回string::npos。在这些例子中,find函数的第一个参数是要查找的子字符串,第二个参数是要开始查找的位置。如果省略第二个参数,则默认从字符串的起始位置开始查找。
所以,当你在C++中使用string类的find函数时,你可以通过检查返回值是否等于string::npos来判断是否找到了子字符串。如果返回值不等于string::npos,则表示找到了子字符串,并可以通过返回值来获取子字符串在原字符串中的位置。如果返回值等于string::npos,则表示没有找到子字符串。
希望这个解释对你有帮助!