C ++中的cerr和cout流有什么区别?

cout是stdout流的对象,而cerr是stderr流的对象。

stdout和stderr是不同的流,即使它们默认情况下都引用控制台输出。重定向(管道)其中一个(例如program.exe> out.txt)不会影响另一个。

通常,应将stdout用于实际程序输出,而所有信息和错误消息都应打印到stderr,以便用户将输出重定向到文件时,信息消息仍打印在屏幕上而不是输出文件上。