基于C語言fflush()函數(shù)的使用詳解
更新時(shí)間:2013年05月27日 16:27:30 作者:
本篇文章是對(duì)C語言中fflush()函數(shù)的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
fflush用于清空緩沖流,雖然一般感覺不到,但是默認(rèn)printf是緩沖輸出的。 fflush(stdout),使stdout清空,就會(huì)立刻輸出所有在緩沖區(qū)的內(nèi)容。 fflush(stdout)這個(gè)例子可能不太明顯,但對(duì)stdin很明顯。 如下語句: int a,c; scanf("%d",&a); c=getchar(); 輸入: 12(回車) 那么 a=12 ,c= '\n' 而: int a,c; scanf("%d",&a); fflush(stdin); c=getchar(); 輸入: 12(回車) 那么a=12, c暫時(shí)未得到輸入值,還需要再輸入c,因?yàn)間etchar也是緩沖輸入,'\n'本還在緩沖區(qū),但是被清空了。 另外fflush不能作用于重定向輸入流。fflush(stdin)刷新標(biāo)準(zhǔn)輸入緩沖區(qū),把輸入緩沖區(qū)里的東西丟棄
fflush(stdout)刷新標(biāo)準(zhǔn)輸出緩沖區(qū),把輸出緩沖區(qū)里的東西打印到標(biāo)準(zhǔn)輸出設(shè)備上
fflush(stdout);//這句起什么作用???——fflush()的作用是:如果圓括號(hào)里是已寫打開的文件的指針,則將輸出緩沖區(qū)的內(nèi)容寫入該指針指向的文件,否則清除輸出緩沖區(qū)。這里的stdout是系統(tǒng)定義的標(biāo)準(zhǔn)輸出文件指針,默認(rèn)情況下指屏幕,那就是把緩沖區(qū)的內(nèi)容寫到屏幕上??墒菑拇a中看不出緩沖區(qū)會(huì)有什么內(nèi)容,所以它實(shí)際上沒有起什么作用
fflush(stdout)刷新標(biāo)準(zhǔn)輸出緩沖區(qū),把輸出緩沖區(qū)里的東西打印到標(biāo)準(zhǔn)輸出設(shè)備上
fflush(stdout);//這句起什么作用???——fflush()的作用是:如果圓括號(hào)里是已寫打開的文件的指針,則將輸出緩沖區(qū)的內(nèi)容寫入該指針指向的文件,否則清除輸出緩沖區(qū)。這里的stdout是系統(tǒng)定義的標(biāo)準(zhǔn)輸出文件指針,默認(rèn)情況下指屏幕,那就是把緩沖區(qū)的內(nèi)容寫到屏幕上??墒菑拇a中看不出緩沖區(qū)會(huì)有什么內(nèi)容,所以它實(shí)際上沒有起什么作用
相關(guān)文章
詳解如何在C/C++中測量一個(gè)函數(shù)或功能的運(yùn)行時(shí)間
本文算是一個(gè)比較完整的關(guān)于在 C/C++ 中測量一個(gè)函數(shù)或者功能的總結(jié),最后會(huì)演示三種方法的對(duì)比,文章通過代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12
C++異步數(shù)據(jù)交換實(shí)現(xiàn)方法介紹
這篇文章主要介紹了C++異步數(shù)據(jù)交換實(shí)現(xiàn)方法,異步數(shù)據(jù)交換,除了阻塞函數(shù) send() 和 recv() 之外,Boost.MPI 還支持與成員函數(shù) isend() 和 irecv() 的異步數(shù)據(jù)交換2022-11-11
VC中控制臺(tái)程序創(chuàng)建窗口的實(shí)例方法
在本篇文章里小編給大家分享的是關(guān)于VC中控制臺(tái)程序創(chuàng)建窗口的實(shí)例方法及相關(guān)代碼內(nèi)容,有需要的朋友學(xué)習(xí)下吧。2021-12-12
C++中new/delete與malloc/free的區(qū)別小結(jié)
本文主要介紹了C++中new/delete與malloc/free的區(qū)別小結(jié), malloc、free是C中的庫函數(shù) new、delete 是C++當(dāng)中的操作符,讀者可以更好地理解C++中內(nèi)存管理的方式和優(yōu)勢2023-08-08
深入解析C++的WNDCLASS結(jié)構(gòu)體及其在Windows中的應(yīng)用
這篇文章主要介紹了C++的WNDCLASS結(jié)構(gòu)體及其在Windows中的應(yīng)用,WNDCLASS被用來定義窗口,文中介紹了其諸多屬性,需要的朋友可以參考下2016-01-01
C++集體數(shù)據(jù)交換實(shí)現(xiàn)示例講解
這篇文章主要介紹了C++集體數(shù)據(jù)交換實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-11-11

