您的位置:首页 > 编程语言 > C语言/C++

C++中将流重新设置成有效地状态clear的使用

2013-09-04 16:42 267 查看
在看《C++ primer》的时候发现以下程序在运行时有错,



程序运行到第二个while的时候就跳过了,无法出入第二个值,也没有弹出问题,百度后发现,缺少cin,sync()

clear是将流中的所有状态都置为有效值,但是还不够,需使用sync先清除缓冲区的内容。

解释:当第一个while循环输入无效字符时,因类型不符合就不会从输入流中提取字符,cin中保存的是上一次输入的字符。

那么使用sync先清空缓存区,然后再让cin有效。所以这两个一般一起使用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐