使用C++标准库如何使字符串逆转请问如何使字符串逆转我的程序#includestring#includeiostreamusing na
使用C++标准库如何使字符串逆转
请问如何使字符串逆转
我的程序
#include<string>
#include<iostream>
using namespace std;
void main()
{
string str="sdfghjkl";
string temp;
size_t j=0;
for(size_t i=str.length();i>=0;i--)
{
temp[j]=str[i];
j++;
}
cout<<temp<<endl;
}
为什么不行呢?
[解决办法]
#include <algorithm>
using namespace std;
reverse(str.begin(),str.end());
[解决办法]
//temp长度为0,你就往里面写?
- C/C++ code
void main() { string str="sdfghjkl"; string::reverse_iterator rIt = str.rbegin(); while (rIt != str.rend()) { cout << *rIt; rIt++; }}
[解决办法]
size_t 是unsigned int,结果是i永远也不会小于0。 