int i;
for(;;)
{
i = 10;
cin >> i;
swith(i){...}
}
在第一次之后cin不等待用户输入...
我问老师说是10正好是回车的ascii码,所以cin相当直接读取到了回车...
但是,为什么啊?我没想明白
Windows和Linux下测试都没有出现你说的这种情况。
都会在cin处block住,等待输入。
输入非int的值都会让你的cin>>i不能完成工作,直接返回,下次,cin看到i还是非int,又直接返回,根本不给你机会输入来更新i值。 另外,这个问题,随便搜索一下就找到很多解答了,这里有完整解答:http://www.cnblogs.com/pianoid/archive/2011/05/03/2035656.html。
######
Windows和Linux下测试都没有出现你说的这种情况。
都会在cin处block住,等待输入。
Windows和Linux下测试都没有出现你说的这种情况。
都会在cin处block住,等待输入。
那个错误是前几天的,做了一趟火车,忘了具体是在哪里
今天我重新编译了一下发现正常输入是对的,但是我为了找到问题,我输入"/"后.....cin就出现我上面说的情况了,但是我确定我前几天只是正常输入也会那样,让我再试试看,但是为什么输入/会不停下呢?
######回复 @Jiango : 谢谢######不是/,其它不是int的值都会让你的cin>>i不能完成工作,直接返回,下次,cin看到i还是非int,又直接返回,根本不给你机会输入来更新i值。 另外,这个问题,随便搜索一下就找到很多解答了。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。