tmpfile
Tworzy plik tymczasowy. Ta funkcja jest przestarzała, ponieważ dostępna jest bezpieczniejsza wersja; zobacz tmpfile_s
.
Składnia
FILE *tmpfile( void );
Wartość zwracana
Jeśli operacja powiedzie się, tmpfile
zwraca wskaźnik strumienia. W przeciwnym razie zwraca wskaźnik NULL
.
Uwagi
Funkcja tmpfile
tworzy plik tymczasowy i zwraca wskaźnik do tego strumienia. Plik tymczasowy jest tworzony w katalogu głównym. Aby utworzyć plik tymczasowy w katalogu innym niż katalog główny, użyj polecenia tmpnam
lub tempnam
z fopen
.
Jeśli nie można otworzyć pliku, tmpfile
zwraca NULL
wskaźnik. Ten plik tymczasowy jest automatycznie usuwany po zamknięciu pliku, gdy program kończy się normalnie lub _rmtmp
gdy jest wywoływany, przy założeniu, że bieżący katalog roboczy nie zmienia się. Plik tymczasowy jest otwierany w trybie w+b (binarny odczyt/zapis).
Błąd może wystąpić, jeśli spróbujesz więcej niż TMP_MAX (zobacz TEMAT STDIO. Wywołania H) z elementem tmpfile
.
Wymagania
Procedura | Wymagany nagłówek |
---|---|
tmpfile |
<stdio.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
Uwaga
W tym przykładzie wymagane są uprawnienia administracyjne do uruchamiania w systemie 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
Zobacz też
We/Wy strumienia
_rmtmp
_tempnam
, , _wtempnam
, , tmpnam
_wtmpnam