关于string迭代器的问题~~

#include<iostream>#include<string>#include<vector>#include<cctype>usingnamespacestd;i... #include<iostream>
#include<string>
#include<vector>
#include<cctype>
using namespace std;
int main()
{
string s;
cin>>s;
if(string::iterator it=s.begin();it!=s.end();it++)
cout<<*it<<endl;
}我用string定义一个迭代器string::iterator it;为什么会出现错误~编译器通不过~而且string后边加::域作用符的时候不能自动弹出函数对话框,请问是什么原因,我用的vc++6.0的版本。
展开
 我来答
匿名用户
2013-07-18
展开全部
for写成if了,string是basic_string的typedef,vc6不能自动识别typedef类型的成员信息,想要弹出框框,这样:

#include<iostream>
#include<string>
#include<vector>
#include<cctype>
using namespace std;

int main()
{
string s;
cin>>s;
for(basic_string<char>::iterator it=s.begin();it!=s.end();++it)
cout<<*it<<endl;
}

另外用迭代器遍历元素时,最好用前缀。
匿名用户
2013-07-18
展开全部
#include<iostream>
#include<string>
using namespace std;

int main()
{
string s;
cin>>s;

for (string::iterator it=s.begin();it!=s.end();it++)
cout<<*it<<endl;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-18
展开全部
for(vector<string>::iterator it=s.begin();it!=s.end();it++)
应该这样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式