_flushall
清除所有的資料流。 清除所有的緩衝區。
int _flushall( void );
傳回值
_flushall傳回開啟資料流 (輸入和輸出) 的數目。 沒有任何錯誤傳回。
備註
預設情況下, _flushall函式寫入適當的檔案開啟的輸出資料流相關聯的所有緩衝區的內容。 所有開啟的輸入資料流相關聯的緩衝區,會清除其目前的內容。 (這些緩衝區通常定義檔案由作業系統,決定資料會自動寫入磁碟的最佳時機: 當緩衝區已滿時、 當關閉資料流,或當程式正常終止而毋需關閉資料流。)
如果讀取跟隨呼叫_flushall,新的資料會讀入從輸入檔的緩衝區。 所有的資料流之後仍保持開啟的呼叫_flushall。
執行階段程式庫的 [認可到磁碟] 功能可讓您確保重要資料會直接存到磁碟,而不是作業系統緩衝區以寫入。 不需重新撰寫現有程式,您可以藉由連結與 Commode.obj 程式的目的檔啟用此功能。 在產生的可執行檔中,呼叫_flushall寫入磁碟中的所有緩衝區的內容。 只有_flushall和fflush受到 Commode.obj。
控制認可到磁碟] 功能的相關資訊,請參閱資料流 I/O, fopen,以及 _fdopen。
需求
Function |
所需的標頭 |
---|---|
_flushall |
<stdio.h> |
如需相容性資訊,請參閱相容性在簡介中。
範例
// crt_flushall.c
// This program uses _flushall
// to flush all open buffers.
#include <stdio.h>
int main( void )
{
int numflushed;
numflushed = _flushall();
printf( "There were %d streams flushed\n", numflushed );
}
.NET Framework 對等用法
請參閱
參考
_flushall