Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Cria um arquivo temporário.Uma versão do tmpfile com aprimoramentos de segurança sistema autônomo descrito em Aprimoramentos de segurança no CRT.
errno_t tmpfile(
FILE** pFilePtr
);
Parâmetros
- [out] pFilePtr
O endereço de um ponteiro para armazenar o endereço do ponteiro gerado para um fluxo.
Valor de retorno
Retorna 0 se obtiver êxito, um código de erro em caso de falha.
Condições de erro
pFilePtr |
Valor de retorno |
Sumário de pFilePtr |
|---|---|---|
NULL |
EINVAL |
não alterado |
Se ocorrer o erro de validação de parâmetro acima, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, errno é definido como EINVAL e é o valor retornado EINVAL.
Comentários
The tmpfile função cria um arquivo temporário e coloca um indicador para esse fluxo na pFilePtr argumento. O arquivo temporário é criado no diretório raiz.Para criar um arquivo temporário em um diretório diferente da raiz, use tmpnam or tempnam em conjunto com fopen.
Se o arquivo não pode ser aberto, tmpfile_s gravações NULL para o pFilePtr parâmetro. Este arquivo temporário é excluído automaticamente quando o arquivo estiver fechado, quando o programa é encerrado normalmente ou quando _rmtmp é chamado, supondo que a diretório de trabalho corrente não é alterado. O arquivo temporário é aberto em w+b modo (binário de leitura/gravar).
Falha pode ocorrer se você tentar mais de TMP_MAX_S (consulte STDIO.H) chamadas com tmpfile_s.
Requisitos
Rotina |
Cabeçalho necessário |
|---|---|
tmpfile_s |
<stdio.h> |
Para obter informações adicionais compatibilidade, consulte Compatibilidade na introdução.
Exemplo
Observação: |
|---|
Este exemplo requer privilégios administrativos para ser executado no Windows Vista. |
// crt_tmpfile_s.c
// This program uses tmpfile to create a
// temporary file, then deletes this file with _rmtmp.
//
#include <stdio.h>
int main( void )
{
FILE *stream;
char tempstring[] = "String to be written";
int i;
errno_t err;
// Create temporary files.
for( i = 1; i <= 3; i++ )
{
err = tmpfile_s(&stream);
if( err )
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
Equivalente do NET Framework
Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.
Observação: