反转字符串是个很简单也比较常用的方法
此文仅做杂谈,无技术含量
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| #include <iostream> #include <algorithm> #include <string> using namespace std;
void myReverse(const string& str) { char* c_str = (char*)str.c_str(); char* p, * q; p = c_str; q = c_str + str.size() - 1; while (p < q) { char temp_c = *p; *p = *q; *q = temp_c; p++; q--; } }
int main() { string str = "123456789"; myReverse(str); // 反转方式1 cout << str << endl; reverse(str.begin() + 2, str.end() - 2); // 反转方式2 cout << str << endl; cout << string(str.rbegin(), str.rend()); // 反转方式3 return 0; }
|
运用迭代器还有更多有趣的写法
这里不一一列出