基于C語言fflush()函數(shù)的使用詳解
更新時(shí)間:2013年05月27日 16:27:30 作者:
本篇文章是對C語言中fflush()函數(shù)的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
fflush用于清空緩沖流,雖然一般感覺不到,但是默認(rèn)printf是緩沖輸出的。 fflush(stdout),使stdout清空,就會立刻輸出所有在緩沖區(qū)的內(nèi)容。 fflush(stdout)這個(gè)例子可能不太明顯,但對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()的作用是:如果圓括號里是已寫打開的文件的指針,則將輸出緩沖區(qū)的內(nèi)容寫入該指針指向的文件,否則清除輸出緩沖區(qū)。這里的stdout是系統(tǒng)定義的標(biāo)準(zhǔn)輸出文件指針,默認(rèn)情況下指屏幕,那就是把緩沖區(qū)的內(nèi)容寫到屏幕上。可是從代碼中看不出緩沖區(qū)會有什么內(nèi)容,所以它實(shí)際上沒有起什么作用
fflush(stdout)刷新標(biāo)準(zhǔn)輸出緩沖區(qū),把輸出緩沖區(qū)里的東西打印到標(biāo)準(zhǔn)輸出設(shè)備上
fflush(stdout);//這句起什么作用???——fflush()的作用是:如果圓括號里是已寫打開的文件的指針,則將輸出緩沖區(qū)的內(nèi)容寫入該指針指向的文件,否則清除輸出緩沖區(qū)。這里的stdout是系統(tǒng)定義的標(biāo)準(zhǔn)輸出文件指針,默認(rèn)情況下指屏幕,那就是把緩沖區(qū)的內(nèi)容寫到屏幕上。可是從代碼中看不出緩沖區(qū)會有什么內(nèi)容,所以它實(shí)際上沒有起什么作用
相關(guān)文章
include包含頭文件的語句中,雙引號和尖括號的區(qū)別(詳解)
下面小編就為大家?guī)硪黄猧nclude包含頭文件的語句中,雙引號和尖括號的區(qū)別(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07Qt中網(wǎng)絡(luò)編程的實(shí)現(xiàn)
本文主要介紹了Qt中網(wǎng)絡(luò)編程的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02