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

io流,该如何解决

2013-01-27 
io流各位大神,我刚学到io类里面的条件状态,我有几个问题想请教: (1)我可以把条件状态理解为一个3位2进制数

io流
各位大神,我刚学到io类里面的条件状态,我有几个问题想请教: 
(1)我可以把条件状态理解为一个3位2进制数吗?而badbit、failbit、eofbit相当于常量条件状态,请问这样理解对吗?
(2)clear和setstate是实现同样的功能吗?
(3)为什么我每次设置failbit有效,badbit也会连带着有效,但是rdstate得到4,却不是6,请问这又是为什么啊?
[解决办法]

#include <iostream>
using namespace std;
int main()
{
 cout << "输入流设置前的状态: " << endl;
 cout << cin.bad() << cin.fail() << cin.eof() << endl;
 cin.setstate(ios::failbit);
 cout << "输入流设置第一次后的状态: " << endl;
 cout << cin.bad() << cin.fail() << cin.eof() << endl;
 cin.setstate(ios::badbit);
 cout << "输入流设置第二次后的状态: " << endl;
 cout << cin.bad() << cin.fail() << cin.eof() << endl;
    return 0;
}

输出结果为:

000

010

110

热点排行