Freigeben über


tmpfile

Erstellt eine temporäre Datei. Diese Funktion ist veraltet, da eine sicherere Version verfügbar ist. siehe tmpfile_s.

Syntax

FILE *tmpfile( void );

Rückgabewert

Im Erfolgsfall gibt tmpfile einen Streamzeiger zurück. Andernfalls wird ein NULL-Zeiger zurückgegeben.

Hinweise

Die Funktion tmpfile erstellt eine temporäre Datei und gibt diesem Stream einen Zeiger zurück. Die temporäre Datei wird im Stammverzeichnis erstellt. Um eine temporäre Datei in einem anderen Verzeichnis als dem Stammverzeichnis zu erstellen, verwenden tmpnam Oder tempnam mit fopen.

Wenn die Datei nicht geöffnet werden kann, tmpfile wird ein NULL Zeiger zurückgegeben. Diese temporäre Datei wird automatisch gelöscht, wenn die Datei geschlossen wird, wenn das Programm normal beendet wird oder wenn _rmtmp sie aufgerufen wird, vorausgesetzt, das aktuelle Arbeitsverzeichnis ändert sich nicht. Die temporäre Datei wird im W+b-Modus (binärer Lese-/Schreibzugriff) geöffnet.

Ein Fehler kann auftreten, wenn Sie mehr als TMP_MAX (siehe STDIO.H) Aufrufe mit tmpfile versuchen.

Anforderungen

Routine Erforderlicher Header
tmpfile <stdio.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

Hinweis

Für dieses Beispiel benötigen Sie Administratorrechte, um es unter Windows Vista auszuführen.

// 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

Siehe auch

Stream-E/A
_rmtmp
_tempnam, , _wtempnamtmpnam_wtmpnam