名前空間
変種
操作

fclose

提供: cppreference.com
< c‎ | io
 
 
ファイル入出力
型とオブジェクト
関数
ファイルアクセス
直接入出力
書式なし入出力
(C95)(C95)
(C95)
(C95)(C95)
(C95)
(C95)
書式付き入力
 
ヘッダ <stdio.h> で定義
int fclose(FILE*stream );

指定されたファイルストリームを閉じます。 バッファリングされているまだ書き込まれていないあらゆるデータは OS にフラッシュされます。 バッファリングされているまだ読み込まれていないデータは破棄されます。

操作が成功したかどうかにかかわらず、ストリームはもはやファイルに紐付けられなくなり、 setbuf または setvbuf によって確保されたバッファ (もしあれば) も紐付け解除され、自動的な確保が使用された場合は解放されます。

fclose が戻った後にポインタ stream の値を使用した場合、動作は未定義です。

目次

[編集]引数

stream - 閉じるファイルストリーム

[編集]戻り値

成功した場合は 0、そうでなければ EOF

[編集]

#include <stdio.h>#include <stdlib.h>   int main(void){FILE* fp =fopen("test.txt", "r");if(!fp){perror("File opening failed");returnEXIT_FAILURE;}   int c;// note: int, not char, required to handle EOFwhile((c =fgetc(fp))!=EOF){// standard C I/O file reading loopputchar(c);}   if(ferror(fp))puts("I/O error when reading");elseif(feof(fp))puts("End of file reached successfully");   fclose(fp);}


[編集]参考文献

  • C11 standard (ISO/IEC 9899:2011):
  • 7.21.5.1 The fclose function (p: 304)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.19.5.1 The fclose function (p: 270)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 4.9.5.1 The fclose function

[編集]関連項目

ファイルを開きます
(関数)[edit]
既存のストリームを別の名前で開きます
(関数)[edit]
close