Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
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