下面一段C++测试代码,whileloop使用eof来跳出循环。strings1;while(cin>>s1){cout<} //cout<//cin.ignore(10000,'0');//加入无效 //cin.clear()//加入无效strings3,s4;cout<<"inputtwostrings:"<getline(cin,s3); getline(cin,s4);if(s3==s4){cout<<"thestringsareequal!"<} elseif(s3>s4){cout<<"s3islarger!"<}else{ cout<<"s4islarger!"<} 在mac终端运行结果如下,粗体为我的输入,斜体为cout打印。可以看到要求输入两string的时候压根就没有输入机会就玩儿蛋了。helloworldhelloworldinputtwostrings:thestringsareequal!另外加入注释代码也不能让cin重新工作。如果注释貂s1相关循环代码,s3s4测试代码可以真常工作。请问这是为什么?mac终端ctrl+d模拟eof之后需要做什么特殊设置才能工作吗?谢谢。
qq_花开花谢_0
摇曳的蔷薇
相关分类