cout与cerr的区别 2011.09.28

来源:互联网 发布:产品图纸设计软件 编辑:程序博客网 时间:2024/05/16 17:30

cerr与cout的主要区分就是:cout输出的信息可以重定向,而cerr只能输出到标准输出(显示器)上。

primer.cpp文件:

#include <iostream>using namespace std;int main(){cout<<"hello----cout"<<endl;cerr<<"hello----cerr"<<endl;return 0;}

编译之后的primer.exe。

在cmd中运行 primer.exe>>primer.txt

在primer文件中只有hello----cout这一行

而在屏幕上输出:hello----cerr

也就是说cout的输出可以重定向到一个文件中,而cerr必须输出在显示器上。

cout流也是标准错误流,作用和cerr一样,区别在于cerr不经过缓冲区,直接向显示器输出信息,而cout中的信息存放在缓冲区,缓冲区满或者遇到endl时才输出.