tmpfile
一時ファイルを作成します。 セキュリティが強化されたバージョンが提供されたため、この関数は非推奨になりました。「tmpfile_s
」を参照してください。
構文
FILE *tmpfile( void );
戻り値
正常に終了した場合、tmpfile
はストリーム ポインターを返します。 それ以外の場合は、NULL
ポインターを返します。
解説
tmpfile
関数は一時ファイルを作成し、そのストリームへのポインターを返します。 一時ファイルはルート ディレクトリに作成されます。 ルート以外のディレクトリに一時ファイルを作成するには、tmpnam
tempnam
fopen
ファイルを開くことができない場合は、 tmpfile
ポインターを NULL
返します。 この一時ファイルは、ファイルが閉じられるとき、プログラムが正常に終了したとき、または呼び出されたときに _rmtmp
、現在の作業ディレクトリが変更されないと仮定して自動的に削除されます。 一時ファイルは w+b (バイナリ読み書き両用) モードで開かれます。
tmpfile
で TMP_MAX (STDIO.H を参照) よりも多く呼び出しを試行した場合は、エラーが発生することがあります。
必要条件
ルーチンによって返される値 | 必須ヘッダー |
---|---|
tmpfile |
<stdio.h> |
互換性の詳細については、「 Compatibility」を参照してください。
例
Note
この例では、Windows Vista を管理者権限で実行する必要があります。
// crt_tmpfile.c
// compile with: /W3
// This program uses tmpfile to create a
// temporary file, then deletes this file with _rmtmp.
#include <stdio.h>
int main( void )
{
FILE *stream;
int i;
// Create temporary files.
for( i = 1; i <= 3; i++ )
{
if( (stream = tmpfile()) == NULL ) // C4996
// Note: tmpfile is deprecated; consider using tmpfile_s instead
perror( "Could not open new temporary file\n" );
else
printf( "Temporary file %d was created\n", i );
}
// Remove temporary files.
printf( "%d temporary files deleted\n", _rmtmp() );
}
Temporary file 1 was created
Temporary file 2 was created
Temporary file 3 was created
3 temporary files deleted
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示