tmpfile
Crea un archivo temporal. Se deja de utilizar esta función porque una versión más segura está disponible; vea tmpfile_s.
FILE *tmpfile( void );
Valor devuelto
Si es correcto, tmpfile devuelve un puntero de secuencia. De lo contrario, devuelve un puntero de NULL .
Comentarios
La función de tmpfile crea un archivo temporal y devuelve un puntero a esa secuencia. El archivo temporal se crea en el directorio raíz. Para crear un archivo temporal en un directorio distinto de la raíz, utilice tmpnam o tempnam junto con fopen.
Si no se puede abrir el archivo, tmpfile devuelve un puntero de NULL . Este archivo temporal se elimina automáticamente cuando se cierra el archivo, cuando el programa termina normalmente, o cuando _rmtmp se denomina, suponiendo que el directorio de trabajo actual no cambia. El archivo temporal se abre en el modo de w+b (escritura binaria).
El error puede producirse si intenta más que TMP_MAX (vea STDIO.H) las llamadas con tmpfile.
Requisitos
Rutina |
Encabezado necesario |
---|---|
tmpfile |
<stdio.h> |
Para obtener información adicional de compatibilidad, vea Compatibilidad en la Introducción.
Ejemplo
Nota
Este ejemplo requiere que se ejecuten privilegios administrativos en 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() );
}
Equivalente en .NET Framework
No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.