cout与cerr 参考百度知道

来源:互联网 发布:南方全站仪usb传输数据 编辑:程序博客网 时间:2024/04/30 01:17

有时候经常会看到cerr,于是就查了一下百度百科。直接上代码了:

#include <iostream>using namespace std;int main(){cout << "hello world---cout" << endl ;cerr << "hello world---cerr" << endl ;return 0;}
编译运行得到argc_example.exe,这里直接运行觉得没什么区别。

百度百科中说,cout对应于标准输出流,默认情况下是显示器。这是一个被缓冲的输出,可以被重定向。
cerr对应标准错误流,用于显示错误消息。默认情况下被关联到标准输出流,但它不被缓冲,也就说错误消息可以直接发送到显示器,而无需等到缓冲区或者新的换行符时,才被显示。一般情况下不被重定向。

上面重定向的含义可以这么理解,就是本来显示到屏幕上,可以显示到文本中。

下面,在cmd中输入argc_example>>cout.txt

这里可以看到只显示了hello world---cerr,那么hello world---cout呢?

在文本里,打开cout.txt

cin>>是输入到屏幕,而argc_example>>是输入到cout.txt中,所以可以被重定向。