📅  最后修改于: 2023-12-03 14:59:47.386000             🧑  作者: Mango
C++中的 string 类型提供了一个 Rend() 函数,用于获取字符串尾部的反向迭代器。
下面是 Rend() 函数的语法:
reverse_iterator Rend()
const_reverse_iterator Rend() const
该函数返回一个 reverse_iterator 或 const_reverse_iterator,分别对应非常量和常量的反向迭代器。
该函数没有参数。
该函数返回一个指向字符串尾部的反向迭代器。
下面是一个使用 Rend() 函数的示例代码:
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str = "Hello, world!";
cout << "Original string: " << str << endl;
for (auto it = str.rbegin(); it != str.rend(); ++it)
{
cout << *it;
}
cout << endl;
return 0;
}
输出结果为:
Original string: Hello, world!
!dlrow ,olleH
在上述示例代码中,我们使用了 Rend() 函数来获取字符串尾部的反向迭代器,从而实现了对字符串的反向遍历输出。具体来说,我们使用了标准库的 rbegin() 和 rend() 函数以及 auto 关键字来定义了一个反向迭代器 it,然后在循环中使用 ++ 运算符逐一遍历反向迭代器,用 * 运算符来取出迭代器指向的元素,输出到控制台上。
需要注意的是,Rend() 函数返回的是一个指向字符串尾部的反向迭代器,所以在循环中使用 ++ 运算符时,应该以该迭代器为起点,而不是以一般的前向迭代器为起点。