欢迎来到代码驿站!

C代码

当前位置:首页 > 软件编程 > C代码

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

时间:2022-07-14 08:18:27|栏目:C代码|点击:

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

#include <stdlib.h>

定义函数:

int mkstemp(char * template);

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

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

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

  char template[] = "template-XXXXXX";

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

  char *template = "template-XXXXXX";

范例

#include <stdlib.h>
main()
{
  int fd;
  char template[] = "template-XXXXXX";
  fd = mkstemp(template);
  printf("template = %s\n", template);
  close(fd);
}

执行

template = template-lgZcbo

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

#include <stdlib.h>

定义函数:

char * mktemp(char * template);

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

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

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

char template[] = "template-XXXXXX";

不可用

  char * template = "template-XXXXXX";

范例

#include <stdlib.h>
main()
{
  char template[] = "template-XXXXXX";
  mktemp(template);
  printf("template=%s\n", template);
}

上一篇:C语言实现五子棋功能全解析

栏    目:C代码

下一篇:C++11各种锁的具体使用

本文标题:C语言新建临时文件和临时文件名的方法

本文地址:http://www.codeinn.net/misctech/207762.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有