关闭

c++学习(一)——输出缓冲区管理

685人阅读 评论(0) 收藏 举报

导致缓冲区内容被刷新的几种情况:

1、程序正常结束。作为main返回工作的一部分,将清空所有输出缓冲区。

2、在一些内存不确定的时候,缓冲区可能已经满了,在这种情况下,缓冲区将会在写下一个值之前刷新。

3、用操作符显示地刷新缓冲区,例如行结束符endl。

4、在每次输出操作执行完后,用unitbuf操作符设置流的内部状态,从而清空缓冲区。

5、可将输出流与输入流关联起来。在这种情况下,在读输入流时,将刷新其关联的输出缓冲区。 

 

此外还应注意,如果程序不正常结束,输出缓冲区将不会刷新。调试程序时,必须保证期待写入的每个输出都确实被刷新了。最好的方法是保证所有的输出操作都显示调用了flush或endl。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:35191次
    • 积分:583
    • 等级:
    • 排名:千里之外
    • 原创:23篇
    • 转载:0篇
    • 译文:0篇
    • 评论:15条
    文章分类
    最新评论