流(stream)是一个传送和格式化固定宽度字符的对象。包括输入流、输出流和同时实现两种功能的输入/输出流。其中,用istream及其派生类表示输入流,用ostream及其子类表示输出流,用iostream及其子类表示输入输出流。
1 输入流与cin
cin是输入流istream类的对象,它是一个全局变量。cin通过提取符(extractor)“>>”从流中获取信息。
2 错误处理
2.1 流状态位
ios_base类中声明了所有流类共有的内容,不依赖于流所处理的字符类型。其中,定义了4个标志位来测试流的状态,badbit、eofbit、failbit和goodbit。其中,badbit位表示了在流缓冲区中发生了致命性错误,流将不能继续使用;eofbit位表示输入结束,例如按下了Ctrl-Z;failbit位表示I/O操作由于非法数据而失败,流可以继续使用;goodbit位表示一切正常,没有错误发生,也没有发生输入结束。
2.2 流状态函数
通过good()、eof()、fail()和bad()等成员函数获取流状态。这些函数的返回值是boolean类型,分别对应goodbit、eofbit、failbit和badbit标志位的。可以通过调用以上的成员函数,根据其返回的布尔值来测试发生了什么情况,返回的布尔值表示相应
订阅专栏 解锁全文
731

被折叠的 条评论
为什么被折叠?



