cpp字符串反转的函数
时间: 2023-07-08 15:41:25 浏览: 54
以下是一个简单的 C++ 字符串反转函数:
```cpp
#include <iostream>
#include <string>
using namespace std;
void reverseString(string& str) {
int n = str.length();
for (int i = 0; i < n / 2; i++) {
char temp = str[i];
str[i] = str[n - i - 1];
str[n - i - 1] = temp;
}
}
int main() {
string str = "Hello, world!";
reverseString(str);
cout << str << endl; // 输出: !dlrow ,olleH
return 0;
}
```
该函数接受一个字符串的引用作为参数,使用双指针法将字符串反转。注意要在函数中修改字符串本身,因此使用了引用类型。
相关问题
cpp字符串反转的库函数
C++ 标准库中的 `reverse()` 函数可以用于反转字符串。下面是一个使用 `reverse()` 函数的示例:
```cpp
#include <iostream>
#include <algorithm> // 包含 reverse() 函数
#include <string>
using namespace std;
int main() {
string str = "Hello, world!";
reverse(str.begin(), str.end());
cout << str << endl; // 输出: !dlrow ,olleH
return 0;
}
```
`reverse()` 函数接受两个迭代器作为参数,分别表示要反转的区间的起始和结束位置。在上面的示例中,`str.begin()` 返回字符串的起始位置的迭代器,`str.end()` 返回字符串的结束位置的迭代器。因此,`reverse(str.begin(), str.end())` 反转了整个字符串。
C++中字符串反转函数
在C++中,可以使用以下方法实现字符串反转函数:
```cpp
#include <iostream>
#include <string>
std::string reverseString(const std::string& str) {
std::string reversedStr;
for (int i = str.length() - 1; i >= 0; i--) {
reversedStr += str[i];
}
return reversedStr;
}
int main() {
std::string str = "Hello, World!";
std::string reversedStr = reverseString(str);
std::cout << "Reversed String: " << reversedStr << std::endl;
return 0;
}
```
这个函数接受一个 `std::string` 类型的参数,并返回一个反转后的字符串。它使用一个循环从字符串的最后一个字符开始,逐个字符地将其添加到新的字符串中,以实现反转。在上面的示例中,我们将字符串 "Hello, World!" 反转并打印出来。输出将是 "dlroW ,olleH"。