我試圖扭轉一個字符串我的C++代碼行下面revStr.at(j)= str.at(size);C++反轉字符串
不會更改revStr中的任何元素。
有沒有另一種方法來做到這一點,而不使用任何庫。
#include <iostream>
#include<sstream>
#include <iterator>
using namespace std;
int main() {
ostringstream d;
long long c = 123456789;
d << c;
//cout << c << endl;
string str = d.str();
//cout << str.at(0) << endl;
int size = str.size() - 1;
//cout << size << endl;
ostringstream e;
e << str;
string revStr = e.str();
for (int i = size; size==0; size--) {
//cout << str.at(size);
int j = 0;
revStr.at(j) = str.at(size);
j++;
} // End For
cout << "Original String is :" << str << endl;
cout << "Reversed String is :" << revStr << endl;
}
[反向字符串C++使用char數組]的可能的複製(https://stackoverflow.com/questions/24372480/reverse-string-c-using-char-array) –
你爲什麼要這麼做沒有任何圖書館?你意識到'ostringstream','string'和'cout'都在標準C++庫中,所以不使用任何庫會意味着你依賴於非標準的輸出機制。使用標準庫'std :: reverse(revStr.begin(),revStr.end())'可以在一條簡單的線上滿足要求。 – Peter