Compartilhar via


tmpfile

Cria um arquivo temporário. Esta função é substituída por uma versão mais segura estiver disponível; consulte tmpfile_s.

FILE *tmpfile( void );

Valor de retorno

Se tiver êxito, tmpfile retorna um ponteiro de fluxo. Caso contrário, retorna um ponteiro de NULL .

Comentários

A função de tmpfile cria um arquivo temporário e retorna um ponteiro para o fluxo. O arquivo temporário é criado no diretório raiz. Para criar um arquivo temporário em um diretório diferente da raiz, use tmpnam ou tempnam junto com fopen.

Se o arquivo não pode ser aberto, tmpfile retorna um ponteiro de NULL . Esse arquivo temporário será excluído automaticamente quando o arquivo estiver fechado, quando o programa será encerrado normalmente, ou quando _rmtmp for chamado, supondo que o diretório de trabalho atual não se altera. O arquivo temporário é aberto em modo de leitura/gravação ( w+b binário).

A falha pode ocorrer se você tentar mais do que TMP_MAX (consulte) STDIO.H chama com tmpfile.

Requisitos

Rotina

Cabeçalho necessário

tmpfile

<stdio.h>

Para informações adicionais de compatibilidade, consulte Compatibilidade na Introdução.

Exemplo

Dica

Este exemplo requer privilégios administrativos executar no 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() );
}
  

Equivalência do .NET Framework

Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de chamadas de plataformas.

Consulte também

Referência

E/S de fluxo

_rmtmp

_tempnam, _wtempnam, tmpnam, _wtmpnam