fclose、_fcloseall

ストリームを閉じます (fclose)、またはすべての開いているストリームを閉じます (_fcloseall)。

int fclose( 
   FILE *stream 
);
int _fcloseall( void );

パラメーター

  • stream
    FILE 構造体へのポインター。

戻り値

fcloseストリームが閉じている場合は、0 を返します。_fcloseall終了したストリームの合計数を返します。どちらの関数を返すEOFエラーを示します。

解説

fclose機能が閉じstream。stream が NULL の場合は、「パラメーターの検証」に説明されているように、無効なパラメーター ハンドラーが呼び出されます。続行するには、実行が許可された場合は、 fclose設定errnoにEINVALをEOF。お勧め、 streamポインターが常にことを確認この関数を呼び出す前にします。

エラー コードの詳細については、「_doserrno、errno、_sys_errlist、および _sys_nerr」を参照してください。

The _fcloseall function closes all open streams except stdin, stdout, stderr (and, in MS-DOS, _stdaux and _stdprn).閉じ、によって作成された一時ファイルを削除するtmpfile。両方の関数では、終了する前に、stream に関連付けられたすべてのバッファーをフラッシュします。システムによって割り当てられたバッファーは、ストリームを閉じるときに解放されます。ユーザーに割り当てられているバッファー setbufとsetvbufが自動的に解放されます。

注: これらの関数を使用して、ストリームを閉じるする場合、基になるファイル記述子および OS ファイル ハンドル (またはソケット)、ストリームとして閉じられます。したがって、ファイルが最初に開かれた場合は、ファイルとして処理ファイル記述子やが閉じているfclose、呼び出しを行うこともなく_close ; のファイル記述子を閉じるには Win32 関数を呼び出すことはありませんCloseHandle 、ファイル ハンドルを閉じること。

fclose_fcloseall別のスレッドからの干渉から保護するためのコードが含まれます。ロックを行わないバージョンのfcloseを参照してください_fclose_nolock。

必要条件

Function

必須ヘッダー

fclose

<stdio.h>

_fcloseall

<stdio.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

例についてを参照してください fopen

同等の .NET Framework 関数

参照

関連項目

ストリーム入出力

_close

_fdopen、_wfdopen

fflush

fopen、_wfopen

freopen、_wfreopen