tmpfiletmpfile

Crea un archivo temporal.Creates a temporary file. Esta función está en desuso, ya que existe una versión más segura; vea tmpfile_s.This function is deprecated because a more secure version is available; see tmpfile_s.

SintaxisSyntax

FILE *tmpfile( void );

Valor devueltoReturn Value

Si se realiza correctamente, tmpfile devuelve un puntero de secuencia.If successful, tmpfile returns a stream pointer. De lo contrario, devuelve un puntero nulo .Otherwise, it returns a NULL pointer.

ComentariosRemarks

La función tmpfile crea un archivo temporal y devuelve un puntero a ese flujo.The tmpfile function creates a temporary file and returns a pointer to that stream. El archivo temporal se crea en el directorio raíz.The temporary file is created in the root directory. Para crear un archivo temporal en un directorio que no sea el raíz, use tmpnam o tempnam junto con fopen.To create a temporary file in a directory other than the root, use tmpnam or tempnam in conjunction with fopen.

Si no se puede abrir el archivo, tmpfile devuelve un puntero nulo .If the file cannot be opened, tmpfile returns a NULL pointer. Este archivo temporal se elimina automáticamente cuando se cierra el archivo, cuando el programa finaliza con normalidad o cuando se llama a _rmtmp , suponiendo que el directorio de trabajo actual no cambia.This temporary file is automatically deleted when the file is closed, when the program terminates normally, or when _rmtmp is called, assuming that the current working directory does not change. El archivo temporal se abre en modo w + b (lectura y escritura binaria).The temporary file is opened in w+b (binary read/write) mode.

Se puede producir un error si se intenta más de TMP_MAX (consulte STDIO. H) llama a con tmpfile.Failure can occur if you attempt more than TMP_MAX (see STDIO.H) calls with tmpfile.

RequisitosRequirements

RutinaRoutine Encabezado necesarioRequired header
tmpfiletmpfile <stdio.h><stdio.h>

Para obtener información adicional sobre compatibilidad, consulte Compatibilidad.For additional compatibility information, see Compatibility.

EjemploExample

Nota

Este ejemplo exige privilegios administrativos para ejecutarse en Windows Vista.This example requires administrative privileges to run on 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

Vea tambiénSee also

E/S de secuenciaStream I/O
_rmtmp_rmtmp
_tempnam, _wtempnam, tmpnam, _wtmpnam_tempnam, _wtempnam, tmpnam, _wtmpnam