tmpnam ()- 生成临时文件名
格式
#include <stdio.h>
char *tmpnam(char *string);语言级别
ANSI
线程安全
是
但是,使用 tmpnam (NULL) 不是线程安全的。
描述
tmpnam() 函数生成的有效文件名与任何现有文件的名称不同。 它将此名称存储在 string中。 如果 string 为 NULL,那么 tmpnam() 函数会将结果保留在内部静态缓冲区中。 任何后续调用都会破坏此值。 如果 string 不是 NULL,那么它必须指向至少包含 L_tmpnam 字节的数组。 临时南 的值在 <stdio.h>中定义。
每次在至少 TMP_MAX 名称的激活组中调用 tmpnam() 函数时,该函数都会生成不同的名称。 对于 ILE C, TMP_MAX 为 32 767。 这是一个理论限制; 可同时打开的实际文件数取决于系统中的可用空间。
返回值
tmpnam() 函数返回指向名称的指针。 如果无法创建唯一名称,那么将返回 NULL。
示例
此示例调用
tmpnam() 以生成有效文件名。#include <stdio.h>
int main(void)
{
char *name1;
if ((name1 = tmpnam(NULL)) !=NULL)
printf("%s can be used as a file name.\n", name1);
else
printf("Cannot create a unique file name\n");
}