c++ string.rfind
时间: 2023-07-19 10:14:50 浏览: 167
深入学习C++_String2.1版
3星 · 编辑精心推荐
`string.rfind()` 是 C++ 标准库中的一个成员函数,用于在字符串中从后往前查找指定字符或子字符串第一次出现的位置。该函数的定义如下:
```cpp
size_t rfind(const string& str, size_t pos = npos) const;
size_t rfind(const char* s, size_t pos = npos) const;
size_t rfind(const char* s, size_t pos, size_t n) const;
size_t rfind(char c, size_t pos = npos) const;
```
其中,第一个参数可以是 `string` 对象或者 `const char*` 类型的字符串,表示要查找的子字符串;第二个参数是可选的,表示查找的起始位置,默认为字符串的末尾。
该函数会返回一个 `size_t` 类型的整数,表示子字符串在原字符串中的位置。如果没有找到,则返回 `string::npos`。
例如,下面的代码演示了使用 `rfind()` 函数查找字符串中最后一个空格的位置:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "Hello World, Welcome to C++!";
size_t pos = str.rfind(' ');
std::cout << "The last space is at position " << pos << std::endl;
return 0;
}
```
输出结果为:
```
The last space is at position 26
```
阅读全文