C++中为什么要设置缓冲区
来源:互联网 发布:单片机交通灯控制系统 编辑:程序博客网 时间:2024/05/21 10:51
转载自Leeboy_Wang
之前用endl一直以为它只是一个回车换行的功能,刚刚才知道原来endl还有一个功能使用来刷新缓冲区的。除了endl之外,c++中还有ends,flush,unitbuf,nounitbuf。为什么要刷新缓冲区呢?
一句话,为了让缓冲区的信息立即强制输出。
如: cout << "aaa" << endl;和 cout << "aaa";都能将aaa输出,前一个除了多了一个换行外,它的aaa是被手动强制输出的,而后便一个aaa是系统每隔一段时间进行检测输出的。由于间隔比较短,让人以为和第一种一样,下面有一段代码让你对刷新缓冲有明显的概念。
- // test.cpp : 定义控制台应用程序的入口点。
- //
- #include "stdafx.h"
- #include <windows.h>
- #include <iostream>
- using namespace std;
- int _tmain(int argc, _TCHAR* argv[])
- {
- setvbuf( stdout, NULL, _IOLBF, 1024 ); //设置控制台输出为行缓存模式,把缓冲区与流相关
- cout <<"hello world\n";
- Sleep(5000);
- cout <<"leeboy" <<endl;
- system("pause");
- return 0;
- }
所以编程要形成好的习惯,多使用endl
- C++中为什么要设置缓冲区
- c++中为什么刷新缓冲区
- C语言中缓冲区
- 为什么输入输出要刷新缓冲区
- vs2013中设置输出缓冲区
- C++/socket缓冲区的大小设置
- 在C / C ++中清除输入缓冲区
- 在nginx中设置socket缓冲区大小
- C语言中scanf与键盘缓冲区
- C语言中scanf()和缓冲区
- C中为什么要用内联函数
- C语言中为什么要使用enum
- C缓冲区
- C 缓冲区
- 汇编调用c函数为什么要设置栈
- 汇编调用c函数为什么要设置栈
- 汇编调用c函数为什么要设置栈
- 汇编调用c函数为什么要设置栈
- MyEclipse更改SVN更新地址
- 循序渐进DB2(第2版)——DBA系统管理、运维与应用案例
- QQ web api
- 红黑树(插入)
- 红黑树(删除)
- C++中为什么要设置缓冲区
- struts2对ognl表达式的使用(配图解加讲解)
- 深入理解PHP内核
- Linux中各种操作符 重定向操作符、管道符
- POJ 1539 UVA 327 Evaluating Simple C Expressions
- 最长公共子序列
- 介绍一个好用的工具类库commons-beanutils
- 不相交集及应用
- UVA 11234 Expressions