0x00 自己寫一個
// 第一種 std::string reverse(std::string str) { std::string res(""); for (int i = str.size() - 1; i >= 0; i--) { res += str[i]; } return res; } // 第二種 int main(void) { std::string str("abcde"); int i = 0, j = str.size() - 1; while (i < j) { // 交換 str[i] = str[j] ^ str[i]; str[j] = str[j] ^ str[i]; str[i] = str[j] ^ str[i]; j--; i++; } std::cout << str.c_str() << std::endl; return 0; }
0x01 使用strrev函數
int main(void) { char s[] = "abcde"; strrev(s); std::cout << s << std::endl; return 0; } // 結果:edcba
0x02 使用algorithm中的reverse
#include <algorithm> int main(void) { std::string str("abcde"); reverse(str.begin(),str.end()); std::cout << str.c_str() << std::endl; return 0; }