tmpnam_s

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu stdio.h - Index


Header-Datei

stdio.h

Kategorie

Routinen für die Eingabe/Ausgabe

Prototyp

errno_t tmpnam_s(char *s, rsize_t maxsize);

Beschreibung

Ersetzt tmpnam und fügt Sicherheitserweiterungen hinzu.

tmpnam_s erstellt einen eindeutigen Dateinamen, der sicher als Name einer temporären Datei verwendet werden kann. tmpnam_s generiert für bis zu TMP_MAX_S Aufrufe einen jeweils anderen Dateinamen. TMP_MAX_S ist in stdio.h mit dem Wert 65.535 definiert. Die Länge der erzeugten Strings ist kleiner als oder gleich L_tmpnam_s #define.

Der Parameter s darf kein Null-Zeiger sein; es ist erforderlich, dass s auf ein Array mit einer Mindestgröße von maxsize zeigt. maxsize muss kleiner als oder gleich RSIZE_MAX sein.

Der Name, den tmpnam_s generiert, ist kürzer als maxsize und wird in dem Array gespeichert, auf das s zeigt.

Weil mit tmpnam_s temporäre Namen für das Erstellen von temporären Dateien erzeugt werden, kann es in seltenen Fällen vorkommen, dass zwei identische Namen erzeugt werden. Wenn tmpnam_s nur zum Erstellen von temporären Dateien eingesetzt werden soll, sollten Sie stattdessen tmpfile_s verwenden.

Rückgabewert

tmpnam_s schreibt den erzeugten String in das Array, auf das s zeigt, und gibt Null zurück. Andernfalls schreibt die Funktion ein Null-Zeichen in s[0] und gibt einen Nicht-Nullwert zurück.

Beispiel

#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ät

POSIX Win32 ANSI C ANSI C++

tmpnam_s

+

+

+

+

Siehe auch