EN JA
FCLOSE(3)
FCLOSE(3) Linux Programmer's Manual FCLOSE(3)

名前

fclose -ストリームを閉じる

書式

#include <stdio.h>
 
int fclose(FILE * fp );

説明

fclose() 関数は、 fp が指すストリームを (バッファリングされていた全ての出力データを fflush(3) を用いて書き込んで) フラッシュし、対応するファイルディスクリプタをクローズする。

返り値

関数が正常に終了すると 0 が返される。正常に終了しなかった場合には EOF が返され、 errno がエラーを示すために設定される。どちらの場合も、そのストリームに対する ( fclose() へのさらなる呼び出しを含む) それ以上のアクセスは未定義の動作を生じさせる。

エラー

EBADF
fp の基となるファイルディスクリプタが不正である。

fclose() 関数はこれ以外にも close(2), write(2), fflush(3) のルーチンで失敗することがある。その場合は errno が、失敗したルーチンで設定された値に設定される。

準拠

C89, C99.

注意

fclose() は C ライブラリで提供されたユーザー空間バッファをフラッシュするだけである点に注意すること。データを確実に物理的にディスクに記録するためにはカーネルバッファも ( sync(2) や fsync(2) を用いて) フラッシュしなければならない。

関連項目

close(2), fcloseall(3), fflush(3), fopen(3), setbuf(3)

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.51 の一部である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
2009-02-23 GNU