Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
crée un fichier temporaire.Il s'agit d'une version de tmpfile avec des améliorations de sécurité comme décrit dans Fonctionnalités de sécurité du CRT.
errno_t tmpfile_s(
FILE** pFilePtr
);
Paramètres
- [out] pFilePtr
L'adresse d'un pointeur pour stocker l'adresse du pointeur généré dans un flux.
Valeur de retour
Retourne 0 si l'opération a réussi, le code d'erreur en cas de échec.
conditions d'erreur
pFilePtr |
Valeur de retour |
contenu de pFilePtr |
|---|---|---|
NULL |
EINVAL |
non modifié |
si l'erreur ci-dessus de validation des paramètres se produit, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution de se poursuivre, errno est défini à EINVAL et la valeur de retour est EINVAL.
Notes
La fonction d' tmpfile_s crée un fichier temporaire et place un pointeur à ce flux de données dans l'argument d' pFilePtr .le fichier temporaire est créé dans le répertoire racine.Pour créer un fichier temporaire dans un répertoire autre que la racine, l'utilisation tmpnam_s ou le tempnam avec fopen.
si le fichier ne peut pas être ouvert, tmpfile_s écrit NULL au paramètre d' pFilePtr .Ce fichier temporaire est supprimée automatiquement lorsque le fichier est fermé, lorsque le programme se termine normalement, ou lorsque _rmtmp est appelé, en supposant que le répertoire de travail actuel ne change pas.Le fichier temporaire est ouvert en mode d' w+b (lecture/écriture binaire).
L'échec peut se produire si vous essayez plus qu' TMP_MAX_S (voir STDIO.H) les appels avec tmpfile_s.
Configuration requise
routine |
en-tête requis |
|---|---|
tmpfile_s |
<stdio.h> |
Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.
Exemple
[!REMARQUE]
Cet exemple requiert l'exécution des privilèges d'administrateur sous Windows Vista.
// crt_tmpfile_s.c
// This program uses tmpfile_s 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() );
}
Équivalent .NET Framework
Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez l' exemples d'appel de code non managé.