cin:格式输出/缓冲区状态/clear

2019-06-02  本文已影响0人  小咕咕coco

类型输入

返回值: 地址或0

cin >>返回值的类型是basic_istream&,代表cin的地址。在ios.h文件中定义了类型转换函数:

operator void *() const { if(state&(badbit|failbit) ) return 0; return (void *)this; }

有这个函数定义后,需要时ios类型转换成void*类型。而在读入发生错误时返回0。

所以因为类型不确定,cin的返回值不能赋给一个变量;判断结尾可以直接放到条件框中,或者检查cin之后变量有没有改变

缓冲区状态

目前只知道读取类型不符会转到“错误”状态,用cin.clear可以修改为有效状态

上一篇 下一篇

猜你喜欢

热点阅读