cout:标准输出,输出到缓冲区中,需要使用endl(将缓冲区内容刷新到设备中,并换行)
可以被重定向输出到文件中。
cerr:标准错误流,直接输出到显示屏,无缓冲
clog: 标准错误流,输入到缓冲区
重定向到文件的方法:
1. 编译运行时重定向
test.exe>>test.txt;
2.
int a = 5; fstream output("XXX.txt"); output<<a<<endl;
3.
//保存原Cout缓冲区指针
streambuf *coutBuf = cout.rdbuf();
// 重定向到文件
fstream fs("xxx.txt") ;
cout.rdbuf(fs.rdbuf()) ;
cout<<a<<endl;
fs.flush();
fs.close();
//恢复原Cout缓冲区指针
cout.rdbuf(coutBuf);