FCLOSE(3)

NAME
fclose - 關閉流

SYNOPSIS 總覽
#include <stdio.h>

int fclose(FILE *stream);

DESCRIPTION 描述
函數 fclose 將名為 stream 的流與它底層關聯的檔案或功能集合斷開。如果流曾用作輸出，任何緩沖的數據都將首先被寫入，使用 fflush(3) 。

RETURN VALUE 返回值
成功執行返回 0，否則返回 EOF 並設置全局變量 errno 來指示錯誤發生。任何一種情況下，對流再進行存取 (包括再次調用 fclose()) 都會帶來未定義的結果。

ERRORS

EBADF
    stream 底層的檔案描述符是無效的。

函數 fclose 也可能失敗並置 errno 為 close(2), write(2) 或 fflush(3) 指定的值。

NOTES 要點
注意 fclose 僅僅刷新使用者空間的由 C 庫提供的緩沖。要保証數據被物理地存儲到磁碟上，必須也刷新核心緩沖。例如，使用 sync(2) 或 fsync(2).

CONFORMING TO 標準參考
函數 fclose 遵循 ANSI X3.159-1989 (``ANSI C'') 標準。

SEE ALSO 參見
close(2), fcloseall(3), fflush(3), fopen(3), setbuf(3)