fflush是計(jì)算機(jī)函數(shù),計(jì)算機(jī)可以通過(guò)這個(gè)功能處理磁盤文件,在這里也是比較常使用的功能,今天武林技術(shù)頻道詳解C語(yǔ)言fflush()函數(shù)的使用,跟著小編的步伐一起來(lái)看看吧!
fflush用于清空緩沖流,雖然一般感覺不到,但是默認(rèn)printf是緩沖輸出的。 fflush(stdout),使stdout清空,就會(huì)立刻輸出所有在緩沖區(qū)的內(nèi)容。 fflush(stdout)這個(gè)例子可能不太明顯,但對(duì)stdin很明顯。 如下語(yǔ)句: 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)容寫到屏幕上。可是從代碼中看不出緩沖區(qū)會(huì)有什么內(nèi)容,所以它實(shí)際上沒有起什么作用
本文是武林技術(shù)頻道小編為大家?guī)?lái)的詳解C語(yǔ)言fflush()函數(shù)的使用,感興趣的朋友可以收藏本站,我們將繼續(xù)為大家推薦更多專業(yè)的知識(shí)。
新聞熱點(diǎn)
疑難解答
圖片精選