?? 12.2.4 fflush函數.txt
字號:
12.2.4 fflush函數
在一點需要注意,在程序中一旦調用了 fclose函數關閉文件之后,如果需要再次訪問該文件時,就
需要重新打開該文件。如果程序對某個文件的訪問次數比較多的話,顯然這種做法就不是很方便。
如果希望每次對文件操作之后并不關閉它,但仍能將緩沖區中的數據立即寫入磁盤文件中,這時可
以使用另一個 C函數 : fflush,這個函數的作用是將緩沖區中的數據寫入到磁盤文件。因此,可以
將上述例 12-3所示代碼中的 fclose函數調用替換為 fflush函數。讀者可自行測試,將會發現程序
能夠得到所需的結果。
我們知道,對于服務端軟件來說,經常需要將各種信息寫入日志中,如果使用 C語言的緩沖文件系
統,可能就會出現問題。例如在系統運行時突然掉電了,此時就有可能導致沒有把緩沖區中的內容
寫入日志中。如果這些日志信息是一些普通的信息,可能無所謂。但如果是一些告警之類的信息,
問題可能就比較大了。因此,當服務器從網絡上接收到信息后,應立即寫入日志中。但又不能關閉
文件,因為隨時都可能要寫入日志文件,如果每次寫入時都要先打開,再寫入并關閉文件,勢必非
常麻煩,影響程序效率。這時就可以使用 ffl ush函數來刷新緩沖區中的數據,將它們寫入磁盤文
件中。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -