为了账号安全,请及时绑定邮箱和手机立即绑定

您好,想问一下,在C++中cin.fail()==false是什么意思?

您好,想问一下,在C++中cin.fail()==false是什么意思?

紫衣仙女 2021-12-08 23:19:36
char ch;int count=0;cin.get(ch);while (cin.fail()==false)【cin.fail()是什么意思有什么作用?为什么==假?】{cout<<ch;++count;cin.get(ch);}
查看完整描述

3 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

fail()用来检测输入是不是有异常,如果没有异常,就是false,也就是说!fail()就是正常的意思。

查看完整回答
反对 回复 2021-12-13
?
临摹微笑

TA贡献1982条经验 获得超2个赞

cin.get(ch)函数的功能是从输入设备读取一个字符到ch变量中,执行完会设置一个标志,成功或者失败。
如果读取出错或则遇到EOF就是"文件"末尾这里说的文件不仅仅是文件,输入设置也可以看成是"文件",标志就是失败。
cin.fail()函数可以获取标志的状态,如果成功返回false, 失败返回true。while就是判断如果输入成功就继续执行,直到输入失败退出while循环。

查看完整回答
反对 回复 2021-12-13
?
喵喔喔

TA贡献1735条经验 获得超5个赞

标准输入流类cin的成员函数fail()的解释是如果badbit标志位和failbit标志位,两个中有一个被置为1时,该函数就返回True,提示流的读入或写出过程发生了错误,需要进行干预。本题中,条件是返回的值是false,就是说如果一切正常,则执行后续的动作。

查看完整回答
反对 回复 2021-12-13
  • 3 回答
  • 0 关注
  • 341 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信