tmpfile

一時ファイルを作成します。この関数は、より安全なバージョンを利用できるため、使用できません。; " " を参照してください tmpfile_s

FILE *tmpfile( void );

戻り値

成功すると、 tmpfile は、ストリーム ポインターを返します。それ以外の場合は NULL のポインターを返します。

解説

tmpfile 関数は、一時ファイルを作成し、そのストリームへのポインターを返します。一時ファイルは、ルート ディレクトリに作成されます。ルート以外のディレクトリに一時ファイルを作成するには、tmpnam または tempnamfopen と共に使用します。

ファイルを開くことができない tmpfile は NULL のポインターを返します。この一時ファイルは、ファイルが閉じられたとき、プログラムが正常に終了したとき、または _rmtmp が呼び出されたときに、自動的に削除されます。これは、現在の作業ディレクトリが変更されていないことを前提とします。一時ファイルは w+b (バイナリ読み書き両用) モードで開かれます。

失敗は TMP_MAX よりも、発生する可能性があります (STDIO.H) tmpfileの呼び出しを参照してください。

必要条件

ルーチン

必須ヘッダー

tmpfile

<stdio.h>

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

使用例

[!メモ]

この例を 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() );
}
  

同等の .NET Framework 関数

該当なし 標準 C 関数を呼び出すには、PInvoke を使用します。 詳細については、「プラットフォーム呼び出しの例」を参照してください。

参照

関連項目

ストリーム入出力

_rmtmp

_tempnam、_wtempnam、tmpnam、_wtmpnam