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) を用いて) フラッシュしなければならない。
関連項目¶
この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 3.51 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
2009-02-23 | GNU |