/*ca73a_c++_流的条件状态 strm::iostate strm::badbit //流的状态 strm::failbit //输入的状态,应该输入数字,结果输入为字符, strm::eofbit
s.eof() s.fail() s.bad() s.good() s.clear()恢复流的状态 s.clear(flag) cin.ignore(200,'\n');//清除前200个字符,如果遇到了‘\n’就提前结束 s.setstate(flag) s.rdstate() cin.setstate(ifstream::badbit);//应该写成(istream::badbit) //error C2027: 使用了未定义类型“std::basic_ifstream”
//强制把流的状态变成bad方法:用的二进制位来标志它的状态:如:000111000 //cin.setstate(istream::badbit); //error C2027: 使用了未定义类型“std::basic_ifstream” //cin.setstate(istream::failbit);//输入的状态,应该输入数字,结果输入为字符,
//同时改变两个 //cin.setstate(istream::badbit|istream::failbit);
//清除bad //cin.clear(istream::badbit); //cin.clear(istream::failbit);
//保存流的状态 istream::iostate old_state = cin.rdstate(); //然后使用old_state, //使用完成后。再恢复 //cin.clear(old_state);
*/
/*ca73a_c++_流的条件状态
strm::iostate
strm::badbit //流的状态
strm::failbit //输入的状态,应该输入数字,结果输入为字符,
strm::eofbit
s.eof()
s.fail()
s.bad()
s.good()
s.clear()恢复流的状态
s.clear(flag)
cin.ignore(200,'\n');//清除前200个字符,如果遇到了‘\n’就提前结束
s.setstate(flag)
s.rdstate()
cin.setstate(ifstream::badbit);//应该写成(istream::badbit)
//error C2027: 使用了未定义类型“std::basic_ifstream”
//强制把流的状态变成bad方法:用的二进制位来标志它的状态:如:000111000
//cin.setstate(istream::badbit);
//error C2027: 使用了未定义类型“std::basic_ifstream”
//cin.setstate(istream::failbit);//输入的状态,应该输入数字,结果输入为字符,
//同时改变两个
//cin.setstate(istream::badbit|istream::failbit);
//清除bad
//cin.clear(istream::badbit);
//cin.clear(istream::failbit);
//保存流的状态
istream::iostate old_state = cin.rdstate();
//然后使用old_state,
//使用完成后。再恢复
//cin.clear(old_state);
*/
#include
using namespace std;
void check_cin_state(istream& is)
{
if (is.bad())//检查cin是否有严重的问题,坏了。系统级错误时
{
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?