c++ string.find()
时间: 2023-10-28 09:18:31 浏览: 73
`string.find()` 函数是 C++ 标准库中 `string` 类型的成员函数,用于在字符串中查找给定子字符串的位置。
函数原型如下:
```cpp
size_t find(const string& str, size_t pos = 0) const noexcept;
```
其中,第一个参数 `str` 是要查找的子字符串,第二个参数 `pos` 是查找的起始位置,默认为 0。函数返回值是找到的字符串的位置,如果没有找到,则返回 `string::npos`。
示例:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str = "hello world";
string sub_str = "world";
size_t pos = str.find(sub_str);
if (pos != string::npos)
cout << "Found at position " << pos << endl;
else
cout << "Not found" << endl;
return 0;
}
```
输出:
```
Found at position 6
```
相关问题
c++ string.find
引用[1]和[3]中的例子展示了如何使用string类的find函数来查找子字符串在原字符串中的位置。在C++中,string类提供了一个名为find的成员函数,它可以在一个字符串中查找另一个子字符串,并返回子字符串在原字符串中的位置。如果找到了子字符串,则返回子字符串的起始位置;如果没有找到,则返回string::npos。在这些例子中,find函数的第一个参数是要查找的子字符串,第二个参数是要开始查找的位置。如果省略第二个参数,则默认从字符串的起始位置开始查找。
所以,当你在C++中使用string类的find函数时,你可以通过检查返回值是否等于string::npos来判断是否找到了子字符串。如果返回值不等于string::npos,则表示找到了子字符串,并可以通过返回值来获取子字符串在原字符串中的位置。如果返回值等于string::npos,则表示没有找到子字符串。
希望这个解释对你有帮助!
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个字符开始。