tmpfile

Crée un fichier temporaire. Cette fonction est déconseillée, car une version plus sécurisée est disponible ; voir tmpfile_s.

Syntaxe

FILE *tmpfile( void );

Valeur retournée

En cas de réussite, tmpfile retourne un pointeur de flux. Sinon, elle retourne un pointeur NULL.

Notes

La fonction tmpfile crée un fichier temporaire et retourne un pointeur désignant ce flux. Le fichier temporaire est créé dans le répertoire racine. Pour créer un fichier temporaire dans un répertoire autre que la racine, utilisez tmpnam ou tempnam utilisez fopen.

Si le fichier ne peut pas être ouvert, tmpfile retourne un NULL pointeur. Ce fichier temporaire est automatiquement supprimé lorsque le fichier est fermé, lorsque le programme se termine normalement, ou lorsqu’il _rmtmp est appelé, en supposant que le répertoire de travail actuel ne change pas. Le fichier temporaire est ouvert en mode w+b (lecture/écriture binaire).

Un échec peut se produire si vous tentez plus de TMP_MAX (voir STDIO.H) appels avec tmpfile.

Spécifications

Routine En-tête requis
tmpfile <stdio.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

Remarque

L’exécution de cet exemple sur Windows Vista nécessite des privilèges d’administrateur.

// 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

Voir aussi

E/S de flux
_rmtmp
_tempnam, _wtempnam, tmpnam, _wtmpnam