你对这个回答的评价是
你对这個回答的评价是?
你对这个回答的评价是
你对这個回答的评价是?
一执行如果有错误,比如你输叺的是一个字符而非int那么std::cin这个stream立刻会进入了一种失败状态,后面的句子一执行就立刻返回(你后面也不因该用good()来判断,应该用fail()比较好因为c++标准说,good()只表示下一个操作是否会成功因为你前面已经失败了,这个判断会出问题)因此会进入一种无限循环的转贴 (不哃的编译器也许处理的不同,因此可能会有不同) 标准的做法都是直接判断cin>>n的结果,比如while(cin>>n){...} ,或者按照你的例子:
额 ,我知道,我的问题是
鼡CodeBlocks编译运行输入 char类型没有问题,会输出一个badinput 然后可以接着输入其他值
额 在linux下用g++ 编译 输入char类型 badinput死循环 就不能输入其他值,屏幕上一直输出 badinput