C++中当用命令行CTRL+Z+Enter模拟EOF后还想继续输入的探索
来源:互联网 发布:纳什职业生涯数据 编辑:程序博客网 时间:2024/04/29 08:24
当达到文件尾部EOF(End of File)时,c++会置位ios::failbit和ios::eofbit.进而我们不能再读取内容了,毕竟文章末尾已经没有东西可读了。但是但我们用命令行CTRL+Z+Enter模拟EOF后还想继续输入怎么办呢?
*读到文件末尾后继续读写输入缓冲区的内容*/
#include <iostream>#include <ios>using namespace std;
int main(int argc, char** argv) {char input;int count = 0;while(cin >> input){cout<<input<<flush;count++;}cout<<count<<" End."<<endl;cout<<"failbit "<<( cin.rdstate() & ios::failbit )<<endl;cout<<"eofbit "<<( cin.rdstate() & ios::eofbit )<<endl;cout<<"badbit "<<( cin.rdstate() & ios::badbit )<<endl;if((cin.fail() && cin.eof())){int ch;cin.clear();cout<<"failbit "<<( cin.rdstate() & ios::failbit )<<endl;cout<<"eofbit "<<( cin.rdstate() & ios::eofbit )<<endl;cout<<"badbit "<<( cin.rdstate() & ios::badbit )<<endl;bool bl = !isspace(cin.get());while(bl){continue;}}else{cout<<"can't go on.\n";exit(1);}while(cin >>input)cout<<input<<flush;return 0;}
0 0
- C++中当用命令行CTRL+Z+Enter模拟EOF后还想继续输入的探索
- C语言中EOF与Ctrl+Z
- 关于windows下在while中先输入回车再输入ctrl+Z()才能表示EOF的解答
- C++常用概念——while循环时终止输入(Ctrl+Z,Ctrl+C,Ctrl+D(EOF))
- Linux中ctrl+z 、ctrl+c、 ctrl+d的区别
- EOF CTRL+Z
- java关于键盘录入ctrl+z(EOF)结束输入的问题
- Ubuntu中ctrl+c和ctrl+z的不同之处
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- Linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- linux中ctrl+z和ctrl+c的区别
- ZOJ-2316-鄙视浙大的OJ
- Linux调试技术GDB命令
- unity简单设计模式---AManagerClass
- 3月10号
- Oracle EBS PO问题杂记
- C++中当用命令行CTRL+Z+Enter模拟EOF后还想继续输入的探索
- JS不同加载方法
- java web笔记之servlet初识
- 【C语言】编写一个函数,将一个数字字符串转换成该字符串对应的数字(包括正整数、负整数)
- Struts与Spring MVC的比较
- apache服务器的启动和关闭
- 仿微信中加载网页时带线行进度条的WebView的实现
- 1.Web基础中会话控制
- mysql odbc 连接中断的解决