一.缓冲区顾名思义即为:内存中开辟的一片缓冲区域
  按类型分为:全缓冲,行缓冲,不带缓冲
  可以通过标准库函数setvbuf(_Inout_ FILE * _File, _Inout_updates_opt_z_(_Size) char * _Buf, _In_ int _Mode, _In_ size_t _Size);来设置缓冲区的类型
1.全缓冲:
  当当填满标准IO的缓存后才进行实际IO操作。
  windows和linux都可以通过给_Mode设为_IOFBF设置全缓冲。
  全缓冲的典型就是对磁盘文件的读写。
  缓冲区为空,一次读满数据,再写出。

windows下测试代码1:

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

 1 void main() 2 { 3     char buf[1024];//缓冲区大小为1024 4     setvbuf(stdout, buf, _IOFBF, 1024); 5     printf("中国女排很给力!\n\n"); 6     //while (1) 7     //{ 8     //    printf("hello"); 9 10     //    Sleep(10);11     //}12     //setvbuf(stdout, NULL, _IONBF, 0);13     system("pause");14 }

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

结果:不会输出

测试代码2:

 

网友评论