reverse函数c++字符串
时间: 2025-02-01 18:57:01 浏览: 44
### C++ 中使用 `reverse` 函数反转字符串
在 C++ 中,可以通过标准库中的 `<algorithm>` 头文件提供的 `std::reverse()` 函数来实现字符串的反转操作。此函数接受两个迭代器参数,分别指向要反转序列的第一个位置和最后一个位置之后的位置。
对于字符串类型的变量,可以直接利用成员函数 `.begin()` 和 `.end()` 来获取相应的迭代器并传递给 `std::reverse()` 进行处理[^1]:
```cpp
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){
string str;
cin >> str;
reverse(str.begin(), str.end());
cout << str;
}
```
上述代码展示了基本的应用场景,即读取输入的一串字符作为待反转的目标对象,并通过调用 `std::reverse()` 完成其逆序排列后再输出到屏幕上[^5]。
当涉及到更复杂的数据结构比如动态分配内存存储的字符数组时,则需先计算出实际长度再指定范围内的起始地址与结束地址来进行同样的逆转动作:
```cpp
#include <iostream>
#include <cstring> // 为了使用 strlen()
#include <algorithm>
using namespace std;
int main() {
char array[101];
cin.getline(array, sizeof(array));
int length = strlen(array);
reverse(array, array + length);
puts(array);
}
```
此外,在 STL 容器如 `vector<char>` 的情况下也可以很方便地应用该算法完成内部数据项顺序颠倒的任务[^3]。
阅读全文
相关推荐


















