fflush
來自 cppreference.com
定義於標頭檔案 <stdio.h> |
||
int fflush( FILE* stream ); |
||
對於輸出流(以及上次操作為輸出的更新流),將 stream 緩衝區中所有未寫入的資料寫入到相關的輸出裝置。
對於輸入流(以及上次操作為輸入的更新流),行為未定義。
如果 stream 是空指標,則所有開啟的輸出流都將被重新整理,包括庫包中操作的或程式無法直接訪問的流。
目錄 |
[編輯] 引數
stream | - | 要寫入的 C 檔案流 |
[編輯] 返回值
成功時返回零。否則返回 EOF 並設定檔案流的錯誤指示符。
[編輯] 注意
POSIX 擴充套件了 fflush 的規範,定義了其對輸入流的影響,只要該流代表檔案或其他可定位裝置:在這種情況下,POSIX 檔案指標被重新定位以匹配 C 流指標(這有效地撤銷了任何讀取緩衝),並且任何尚未從流中讀回的 ungetc 或 ungetwc 的效果都將被丟棄。
Microsoft 也擴充套件了 fflush 的規範,定義了其對輸入流的影響:在 Visual Studio 2013 及之前版本中,它丟棄了輸入緩衝區,在 Visual Studio 2015 及更新版本中,它沒有效果,緩衝區被保留。
[編輯] 參考
- C23 標準 (ISO/IEC 9899:2024)
- 7.21.5.2 fflush 函式 (p: TBD)
- C17 標準 (ISO/IEC 9899:2018)
- 7.21.5.2 fflush 函式 (p: TBD)
- C11 標準 (ISO/IEC 9899:2011)
- 7.21.5.2 fflush 函式 (p: 305)
- C99 標準 (ISO/IEC 9899:1999)
- 7.19.5.2 fflush 函式 (p: 270-271)
- C89/C90 標準 (ISO/IEC 9899:1990)
- 4.9.5.2 fflush 函式
[編輯] 參閱
(C11) |
開啟檔案 (function) |
關閉檔案 (function) | |
C++ 文件 for fflush
|