【发布时间】:2014-05-24 00:30:47
【问题描述】:
cin失败后如何再次使用或如何退出
while(cin>>some_string>>some_int) 合法地让 cin>> 可以再次使用?
练习是这样的:用姓名和年龄填充 2 个向量(1 个字符串和 1 个整数), 通过“不再”行终止输入,询问程序需要输出相应年龄的名称(或“未找到名称”)。我的问题是 cin>> :当我输入“不再”时,再次使用 cin>> 的任何尝试都失败了。
代码:
{
vector<string>name_s;
vector<int>age_s;
int age = 0,checker=0;
string name;
while( cin>>name>>age) //input of name and age
{
name_s.push_back(name); //filling vectors
age_s.push_back(age);
}
string name_check;
cout<<"\nEnter a name you want to check : ";
cin>>name_check;
for(int i =0;i<name_s.size();++i)
{
if(name==name_s[i])
{
cout<<"\n"<<name_check<<", "<<age_s[i]<<"\n";
++checker;
}
}
if(checker<1)
cout<<"\nName not found.\n";
system("PAUSE");
}
【问题讨论】:
标签: c++ string io inputstream formatted-input