#include <stdio.h>
int fclose(FILE *stream);
函數 fclose 將名為 stream 的流與它底層關聯的檔案或功能集合斷開。如果流曾用作輸出,任何緩沖的數據都將首先被寫入,使用 fflush(3) 。
成功執行返回 0,否則返回 EOF 並設置全局變量 errno 來指示錯誤發生。任何一種情況下,對流再進行存取 (包括再次調用 fclose()) 都會帶來未定義的結果。
函數 fclose 也可能失敗並置 errno 為 close(2), write(2) 或 fflush(3) 指定的值。
注意 fclose 僅僅刷新使用者空間的由 C 庫提供的緩沖。要保証數據被物理地存儲到磁碟上,必須也刷新核心緩沖。例如,使用 sync(2) 或 fsync(2).
函數 fclose 遵循 ANSI X3.159-1989 (``ANSI C'') 標準。