C++ string .find
时间: 2024-10-15 14:24:57 浏览: 24
深入学习C++_String2.1版
3星 · 编辑精心推荐
在C++中,`std::string` 类型有一个名为 `find` 的成员函数,用于查找字符串内的指定字符、子串或者首次出现的位置。它的基本语法如下:
```cpp
size_t find(const char* str, size_t pos = 0) const;
size_t find(const std::string& str, size_t pos = 0) const;
```
这里有两个重载版本:
1. 第一个接受一个指向字符的指针作为参数 `str` 和一个可选的起始搜索位置 `pos`,默认值为0(表示从字符串开头开始搜索)。如果找到匹配的子串,则返回该子串的第一个字符在原字符串中的索引;如果没有找到则返回 `npos`(通常是一个特殊值,表示未找到)。
2. 第二个重载版本接受一个 `std::string` 对象 `str` 作为参数,其他部分与第一个重载类似。
例如,如果你有一个 `std::string` 变量 `s`,你可以这样做:
```cpp
size_t index = s.find("hello"); // 查找 "hello",默认从头开始
if (index != npos)
{
// 子串存在,打印其位置
std::cout << "Substring found at position: " << index << std::endl;
}
else
{
std::cout << "Substring not found." << std::endl;
}
```
阅读全文