当执行cin>>x的返回值,该怎么处理
当执行cinx的返回值各位老师大家好,最近看到语句,while(cinx){...........}不太明白。望指点我想知道当
当执行cin>>x的返回值
各位老师大家好,最近看到语句,while(cin>>x){...........}不太明白。望指点
我想知道当执行cin>>x的返回值
[解决办法]
读取成功的话返回istream&
失败的话流出错···
[解决办法]
thanks http://www.cnblogs.com/gysm/archive/2011/08/03/2126511.html
[解决办法]
隐式转换成bool类型(非0即1)
[解决办法]
不是返回值,而是因为流有一个operator void*()这里会调用该重载函数,然后进行测试。
[解决办法]
楼上正解。
[解决办法]
循环的条件表达式最终转换成一个bool类型,但是cin是没有转换成bool类型的途径,但是有我上面说的那个所以可以转换成指针,测试指针是否为空即可
[解决办法]
[解决办法]楼上都是正解。
while(cin>>x)在遇到输入一个特殊字符(CTRL+Z)的时候(楼主可以自己测试一下),就会得到NULL,然后循环就退出了……
[解决办法][解决办法]哈,,有人跟我想一块去啦
看看这篇文章吧
http://blog.csdn.net/gytanonymous/article/details/7409219