C语言新建临时文件和临时文件名的方法

2025-05-29 0 81

C语言mkstemp()函数:建立临时文件
头文件:

?

1
#include <stdlib.h>

定义函数:

?

1
int mkstemp(char * template);

函数说明:mkstemp()用来建立唯一的临时文件. 参数template 所指的文件名称字符串中最后六个字符必须是XXXXXX. Mkstemp()会以可读写模式和0600 权限来打开该文件, 如果该文件不存在则会建立该文件. 打开该文件后其文件描述词会返回. 文件顺利打开后返回可读写的文件描述词. 若果文件打开失败则返回NULL, 并把错误代码存在errno 中.

错误代码:EINVAL 参数template 字符串最后六个字符非XXXXXX. EEXIST 无法建立临时文件.

附加说明:
参数 template 所指的文件名称字符串必须声明为数组, 如:

?

1
char template[] = "template-XXXXXX";

千万不可以使用下列的表达方式

?

1
char *template = "template-XXXXXX";

范例

?

1

2

3

4

5

6

7

8

9
#include <stdlib.h>

main()

{

int fd;

char template[] = "template-XXXXXX";

fd = mkstemp(template);

printf("template = %s\\n", template);

close(fd);

}

执行

?

1
template = template-lgZcbo

C语言mktemp()函数:产生唯一临时文件
头文件:

?

1
#include <stdlib.h>

定义函数:

?

1
char * mktemp(char * template);

函数说明:mktemp()用来产生唯一的临时文件名. 参数template 所指的文件名称字符串中最后六个字符必须是XXXXXX. 产生后的文件名会借字符串指针返回.

返回值:文件顺利打开后, 指向该流的文件指针就会被返回. 如果文件打开失败则返回NULL, 并把错误代码存在errno 中.

附加说明:参数 template 所指的文件名称字符串必须声明为数组,如:

?

1
char template[] = "template-XXXXXX";

不可用

?

1
char * template = "template-XXXXXX";

范例

?

1

2

3

4

5

6

7
#include <stdlib.h>

main()

{

char template[] = "template-XXXXXX";

mktemp(template);

printf("template=%s\\n", template);

}

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 C语言新建临时文件和临时文件名的方法 https://www.kuaiidc.com/106769.html

相关文章

发表评论
暂无评论