tmpnam_s

De RAD Studio
Aller à : navigation, rechercher

Remonter à stdio.h - Index


Fichier en-tête

stdio.h

Catégorie

Routines d'entrée/sortie

Prototype

errno_t tmpnam_s(char *s, rsize_t maxsize);

Description

Remplace tmpnam en ajoutant des améliorations relatives à la sécurité.

tmpnam_s crée un nom de fichier unique, qui peut être utilisé en toute sécurité en tant que nom d'un fichier temporaire. tmpnam_s génère une chaîne différente à chacun de ses appels, jusqu'à TMP_MAX_S fois. TMP_MAX_S est défini dans stdio.h à 65 535. La longueur des chaînes générées est inférieure ou égale à L_tmpnam_s #define.

Le paramètre s ne doit pas être un pointeur null. Il est nécessaire que s pointe sur un tableau d'au moins maxsize de longueur. maxsize doit être inférieur ou égal à RSIZE_MAX.

Le nom que tmpnam_s génère est inférieur à maxsize en longueur et est stocké dans le tableau sur lequel s pointe.

Puisque tmpnam_s est utilisé pour configurer des noms de fichier temporaire afin de créer des fichiers temporaires les utilisant, il existe des circonstances rares où deux noms identiques peuvent être créés. Si tmpnam_s est seulement employé pour créer des fichiers temporaires, vous devriez plutôt utiliser tmpfile_s.

Valeur renvoyée

tmpnam_s écrit la chaîne générée dans le tableau sur lequel s pointe et elle renvoie zéro. Sinon, la fonction écrit un caractère null dans s[0] et renvoie une valeur différente de zéro.

Exemple

#include <stdio.h>
int main(void)
{
  char name[13];
  if(std::tmpnam_s(name, 13)){
    printf("Unable to create temporary name");
  }
  else{
    printf("Temporary name: %s\n", name);
  }
  return 0;
}

Portabilité

POSIX Win32 ANSI C ANSI C++

tmpnam_s

+

+

+

+

Voir aussi