cin 读取int的疑问
想写一个从终端 读取 一个int 的函数,如果读到的不是int,则重新读一个int,
参照了C++ Primer上的一段代码,
下面的代码 如果一开始输入的是int ,则能正确读取, 但是如果输入一个字母
则会无限循环中, 似乎 cin 有缓冲似的, 如果cin读失败,不会跳过这个字符吗???
另外 in.clear(istream::failbit) 似乎没起作用, 必须in.clear()之后才行, 不知是什么原因
在c语言里面 fflush()可以清空输入流
当年我在这上面犯了一个大错误,唉!5年了。呵呵