man tmpnam (Fonctions bibliothèques) - Créer un nom de fichier temporaire.

NOM

tmpnam, tmpnam_r - Créer un nom de fichier temporaire.

SYNOPSIS

#include <stdio.h>

char *tmpnam (char *s);

DESCRIPTION

La fonction tmpnam() renvoie un pointeur sur une chaîne qui représente un nom de fichier valide, qui n'existait pas il y a quelques instants. Ainsi un programmeur naïf peut croire qu'il s'agit d'un nom correct pour créer un fichier temporaire. Si l'argument s est NULL, ce nom est stocké dans un buffer interne qui pourra être écrasé lors du prochain appel à tmpnam(). Si s est non NULL, le nom y est copié (le buffer doit faire au moins L_tmpnam octets ) et la valeur de s est renvoyée si la fonction réussit.

Le nom de fichier qui est créé est préfixé par P_tmpdir. (Les constantes L_tmpnam et P_tmpdir sont définies dans <stdio.h> comme TMP_MAX mentionné plus bas).

VALEUR RENVOYÉE

La fonction tmpnam() renvoie un pointeur sur un nom de fichier temporaire unique, ou NULL si l'unicité n'a pas pu être assurée.

ERREURS

Aucune erreur n'est définie.

NOTES

La fonction tmpnam() engendre une nouvelle chaîne à chaque appel, jusqu'à TMP_MAX fois. Si on l'invoque plus de TMP_MAX fois, le comportement dépend de l'implémentation.

Les applications portables qui utilisent les threads ne peuvent pas appeler tmpnam() avec un paramètre NULL si _POSIX_THREAD_SAFE_FUNCTIONS ou _POSIX_THREADS sont définies.

Un brouillon POSIX proposait l'utilisation d'une fonction tmpnam_r() définie par

char *tmpnam_r(char *s) {
    return s ? tmpnam(s) : NULL;
}
apparemment comme une précaution pour ne pas utiliser NULL. Quelques systèmes l'implémentent. Pour obtenir le prototype de la GlibC, définir _SVID_SOURCE ou _BSD_SOURCE avant d'inclure <stdio.h>.

BOGUES

N'utilisez jamais cette routine. Utilisez mkstemp(3) à la place.

CONFORMITÉ

SVID 3, POSIX, BSD 4.3, ISO 9899

"VOIR mktemp (3),

TRADUCTION

Christophe Blaess, 1996-2003.

CETTE PAGE DOCUMENTE AUSSI :