Definition | #include <stdio.h> char *mktemp(char *vorlage);
Hätte vorlage z.B den Inhalt "XXXX.ABC.XXXX" und die TSN-Nummer der aktuellen Task wäre 6082, dann erzeugt #T.A.ABC.6082 | |
Returnwert | Zeiger auf die Ergebniszeichenkette, die den neuen Namen enthält | |
bei Erfolg. | ||
| NULL-Zeiger | wenn ein Fehler auftrat, z.B. weil vorlage weniger als 8 Zeichen enthält oder |
Hinweise | Da für die Bildung eines eindeutigen Namens die Buchstaben A-Z und die Ziffern 0-9 verwendet werden, ist die Anzahl der Temporäre Dateien werden automatisch bei Beendigung einer Task (LOGOFF) gelöscht. Wenn allerdings bei der Systemgenerierung das standardmäßige Präfix (#) für temporäre Dateien geändert wurde, bleiben die Dateien erhalten. | |
Beispiel | Folgendes Programm erzeugt drei eindeutige temporäre Dateinamen und öffnet die Dateien zum Schreiben und Lesen. #include <stdio.h>
FILE *fp1, *fp2, *fp3;
char s[] = "XXXX.temp.XXXX";
int main(void)
{
mktemp(s);
fp1 = fopen(s,"w+r");
printf("%s\n",s); /* erzeugter Name: #T.A.TEMP.6082 */
mktemp(s);
fp2 = fopen (s,"w+r");
printf("%s\n",s); /* erzeugter Name: #T.B.TEMP.6082 */
mktemp(s);
fp3 = fopen (s,"w+r");
printf("%s\n",s); /* erzeugter Name: #T.C.TEMP.6082 */
return 0;
}
| |