一.緩沖區(qū)顧名思義即為:內(nèi)存中開辟的一片緩沖區(qū)域
  按類型分為:全緩沖,行緩沖,不帶緩沖
  可以通過標(biāo)準(zhǔn)庫函數(shù)setvbuf(_Inout_ FILE * _File, _Inout_updates_opt_z_(_Size) char * _Buf, _In_ int _Mode, _In_ size_t _Size);來設(shè)置緩沖區(qū)的類型
1.全緩沖:
  當(dāng)當(dāng)填滿標(biāo)準(zhǔn)IO的緩存后才進(jìn)行實(shí)際IO操作。
  windows和linux都可以通過給_Mode設(shè)為_IOFBF設(shè)置全緩沖。
  全緩沖的典型就是對(duì)磁盤文件的讀寫。
  緩沖區(qū)為空,一次讀滿數(shù)據(jù),再寫出。

windows下測(cè)試代碼1:

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

 1 void main() 2 { 3     char buf[1024];//緩沖區(qū)大小為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 }

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

結(jié)果:不會(huì)輸出

測(cè)試代碼2:

 

網(wǎng)友評(píng)論