主题:string可不可以用迭代器逆序输出
我想用string的迭代器逆序输出,但是却出错了。
我的程序是这个样子的:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s;
s="visualc++";
for(string::iterator i=s.end()-1;i>=s.begin();i--)
cout<<*i;
return 0;
}
编译没有错,也没有警告,但是是运行的时候却出错了。错误提示是这样的。(运行的确达到了逆序输出的效果)。我用的是微软visualC++2008速成版。请问这是什么原因?该怎么解决? (用下标的方法我知道,现在我的要求是用迭代器)
我的程序是这个样子的:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s;
s="visualc++";
for(string::iterator i=s.end()-1;i>=s.begin();i--)
cout<<*i;
return 0;
}
编译没有错,也没有警告,但是是运行的时候却出错了。错误提示是这样的。(运行的确达到了逆序输出的效果)。我用的是微软visualC++2008速成版。请问这是什么原因?该怎么解决? (用下标的方法我知道,现在我的要求是用迭代器)