fclose | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


fclose関数

概要

ファイルをクローズする。

ヘッダ

stdio.h

形式

int fclose(FILE* stream);

引数

stream

クローズするストリーム。

戻り値

成功したら 0 を、何らかのエラーを検出したときには EOF を返す。

詳細

指定されたストリームのフラッシュを行った後、クローズ処理を行う。バッファリングされているデータは、入力ストリームでは無視され、出力ストリームでは書き出される。

この関数は、成功か失敗かに関わらず、ストリームとファイルの結びつきを切り離す(つまりクローズする)。setbuf関数setvbuf関数を使って設定されたバッファの結びつきも切り離され、これらの関数が自動的に確保したバッファであれば解放する。

注意

使用例

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    FILE* fp = fopen("test.txt", "w");
    if (fp == NULL) {
        fputs("ファイルオープンに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }

    if (fputs("Hello, World\n", fp) == EOF) {
        fputs("ファイルへの書き込みに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }

    if (fclose(fp) == EOF) {
        fputs("ファイルクローズに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }
}

実行結果(標準出力)

実行結果(test.txt)

Hello, World

関連

ファイルオープンは fopen関数で行う。

解説章

第39章


参考リンク


更新履歴

’2018/4/7 「詳細」に、バッファやストリームの切り離しに関する説明を追加。

’2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る