首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

if(!cin)语句的有关问题

2012-09-10 
if(!cin)语句的问题if(!cin)这句条件判断等于if(cin.fail())还是if(cin.fail())只是if(!cin)的一种情况啊?

if(!cin)语句的问题
if(!cin)这句条件判断等于if(cin.fail())还是if(cin.fail())只是if(!cin)的一种情况啊?cin是istream类的一个对象,对它取非是什么意思?

[解决办法]
判断ios::eofbit, ios::failbit, ios::badbit
[解决办法]
cin有自动类型转换的函数。
可以自动转换为bool类型。
[解决办法]
这句话就是 判断用户输入数据之后 cin.good()是不是为true
输入输出流有三个状态位:eofbit、badbit、failbit。
只有这三个标记位均为0时才表示流状态正常

虽然cin返回流,但是你这里取非会自动转换为bool,好像在C++ primer等书里有介绍

楼主可以看看:
http://cache.baidu.com/c?m=9d78d513d99815b8589cc52551029026475bda257a95c7140cc98e18cd390e564711b2fa717e0704a4992b211ce41c04e9f63d70320920bc90d5db0a8ce1c96c78952736721b9b4211ce19a4d64124cb2b9b50feaf6eb4fbb278&p=8b2a921190df50f108e2943e53&user=baidu

热点排行