C++ cout clog cerr区别

C++ cout clog cerr区别教程

C++ 中的 std 命名空间中,用于输出的不仅仅只有 cout,还有 clog 和 cerr,分别用于输出 log 和删除错误信息,他们使用都跟 cout 一模一样。

cerr 对象又叫标准错误,通常用来输出警告和错误信息给程序的使用者,而 clog 对象用于产生程序执行的一般信息。

C++ cout clog cerr简介

对象 描述
cout 写到标准输出的 ostream 对象。
cerr 输出到标准错误的 ostream 对象,常用于程序错误信息。
clog 也是输出标准错误流(这点儿和 cerr 是一样的)。

C++输出clog详解

语法

clog << varname1 << varname2 << varname3;

参数

参数 描述
clog 输出变量使用的关键字。
varname1 要输出的变量。
varname2 要输出的变量。
varname3 要输出的变量。

说明

我们使用 clog 连续输出了三个变量,clog 可以一次性输出任意多个变量的值。

C++输出cerr详解

语法

cerr << varname1 << varname2 << varname3;

参数

参数 描述
cerr 输出变量使用的关键字。
varname1 要输出的变量。
varname2 要输出的变量。
varname3 要输出的变量。

说明

我们使用 cerr 连续输出了三个变量,cerr 可以一次性输出任意多个变量的值。

C++ cout clog cerr区别

cout 经过缓冲后输出,默认情况下是显示器。这是一个被缓冲的输出,是标准输出,并且可以重新定向。

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

C++ cout clog cerr区别总结

在 C++ 中的 std 命名空间中,用于输出的不仅仅只有 cout,还有 clog 和 cerr,分别用于输出 log 和删除错误信息,他们使用都跟 cout 一模一样。

cerr 对象又叫标准错误,通常用来输出警告和错误信息给程序的使用者,而 clog 对象用于产生程序执行的一般信息。