cin、cout、cerr、clog------c++ Primer Plus

cin对象与标准输入流相对应。

cout对象与标准输出流相对应。

cerr对象与标准错误流相对应,常用于程序错误信息,不缓冲,直接被发送给屏幕。

clog对象也对应标准错误流(这点儿和cerr是一样的)会缓冲

 对象代表流 当iostream文件为程序声明一个cout对象时,该对象将包含存储了与输出有关的信息的数据成员,如显示数据时使用的字段宽度、小数位数、显示整数时采用的计数方法以及描述用来处理输出流的缓冲区的streambuf对象的地址。下面的语句通过指向的streambuf对象将字符串”aaaa“中的字符放到cout管理的缓冲区中:

cout<<"aaaa";

 

具体在输出的时候,三者是有区别的:

1、cout经过缓冲后输出,默认情况下是显示器。这是一个被缓冲的输出,是标准输出,并且可以重新定向(关于重新定向的意思可以参考下面的例子);

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

 

c++ Primer Plus

posted @ 2017-09-27 16:18  ff_d  阅读(331)  评论(0编辑  收藏  举报