std::fclose
提供: cppreference.com
ヘッダ <cstdio> で定義 | ||
int fclose(std::FILE* stream ); | ||
指定されたファイルストリームを閉じます。 バッファリングされているまだ書き込まれていないあらゆるデータは OS にフラッシュされます。 バッファリングされているまだ読み込まれていないデータは破棄されます。
操作が成功したかどうかにかかわらず、ストリームはもはやファイルに紐付けられなくなり、 std::setbuf または std::setvbuf によって確保されたバッファ (もしあれば) も紐付け解除され、自動的な確保が使用された場合は解放されます。
fclose
が戻った後にポインタ stream
の値を使用した場合、動作は未定義です。
目次 |
[編集]引数
stream | - | 閉じるファイルストリーム |
[編集]戻り値
成功した場合は 0、そうでなければ EOF。
[編集]例
Run this code
#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 loop putchar(c);} if(ferror(fp)) puts("I/O error when reading");elseif(feof(fp)) puts("End of file reached successfully"); fclose(fp);}
[編集]関連項目
ファイルを開きます (関数) | |
既存のストリームを別の名前で開きます (関数) | |
put 領域のバッファをフラッシュし、紐付けられているファイルを閉じます ( std::basic_filebuf<CharT,Traits> のパブリックメンバ関数) | |
fclose の C言語リファレンス |