creat系统调用

用处

creat函数用来创建一个新的文件

函数原型

#include<fcntl.h>
#include<sys/types.h>
#include<sys/stat.h>

int creat(const char* pachname,mode_tmode);

成功返回为只写打开的文件描述符:失败返回-1文件(文件描述符永远是一个非负整数)。

缺点

它以只写的方式打开创建的文件,在open函数新版本之前,如果要创建一个临时文件,必要先写该文件,则必须调用creat,close函数,然后在调用open函数。现在可以直接调用open函数,如:

open("myfile",O_CREAT,S_IRUSR|S_IXOTH);
//创建一个名为myfile的文件,文件属主拥有它的读操作权限,其它用户拥有它的执行权限(也只有这么多权限)
$ ls -ls myfile
o -r_______x 1 neil software 0 sep22 08:22 myfile*

文件的访问权限的几个影响因素

@1:只有文件被创建出来后才能谈及访问权限

@2:用户掩码(user mask,由shell的uname命令设定)会影响到被创建文件的访问权限。

猜你喜欢

转载自blog.csdn.net/jiaochiwuzui/article/details/79544334