c – 我如何跳过(getline(cin,tmp))?
发布时间:2020-12-16 10:20:13 所属栏目:百科 来源:网络整理
导读:我正在阅读’通用编程和stl’ 在第1章中,这是一个这样的样本, int main(){ vectorstring v; string tmp; while(getline(cin,tmp)) //problem is here,it keep asking me to input value v.push_back(tmp); sort(v.begin(),v.end()); copy(v.begin(),v.end(),
我正在阅读’通用编程和stl’
在第1章中,这是一个这样的样本, int main() { vector<string> v; string tmp; while(getline(cin,tmp)) //problem is here,it keep asking me to input value v.push_back(tmp); sort(v.begin(),v.end()); copy(v.begin(),v.end(),ostream_iterator<string>(cout,"n")); return 0; } 我如何摆脱困境,一直要求我输入价值,没有结局…. 解决方法
发送文件结束符:您可以使用CTRL-Z返回(Windows)或CTRL-D(Unix终端).然后,getline将返回false,因为没有什么可以从stdin读取.
另一种方法是:将另一个程序的输出管道输入到这个程序中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |