反轉字符串(雜談)

反轉字符串是個很簡單也比較經常使用的方法ios

此隨筆僅作雜談,無技術含量spa

 1 #include <iostream>
 2 #include <algorithm>
 3 #include <string>
 4 using namespace std;
 5 
 6 void myReverse(const string& str) {
 7     char* c_str = (char*)str.c_str();
 8     char* p, * q;
 9     p = c_str;
10     q = c_str + str.size() - 1;
11     while (p < q) {
12         char temp_c = *p;
13         *p = *q;
14         *q = temp_c;
15         p++;
16         q--;
17     }
18 }
19 
20 int main() {
21     string str = "123456789";
22     myReverse(str);    // 反轉方式1
23     cout << str << endl;
24     reverse(str.begin() + 2, str.end() - 2);    // 反轉方式2
25     cout << str << endl;
26     cout << string(str.rbegin(), str.rend());    // 反轉方式3
27     return 0;
28 }

 

運用迭代器還有更多有趣的寫法code

這裏不一一列出blog

相關文章
相關標籤/搜索