fcntl函数

2020-10-11  本文已影响0人  李伟13
#include <fcntl.h>
int fcntl(int fd, int cmd, ...);

其中,fd是文件描述符,cmd表示执行何种操作,依据操作类型不同,可能需要第三个可选参数arg


文件描述符标志/文件状态标志

https://blog.csdn.net/kyang_823/article/details/79496362

文件状态标志分类

1、访问方式标志

指明允许文件标志符用于读、写或两者兼之,包括O_RDONLY、O_WRONLY和O_RDWR。
这些访问方式在文件被打开时选定,之后便不能再改变。
可以通过fcntl函数获取文件访问方式。——因为读和写访问方式不是各占一位,因此获取文件访问方式的可移植方法是用屏蔽字O_ACCMODE先与文件状态标志值作按位与操作(’&’)得到访问方式位,再将结果与这3个值逐一比较(APUE set_fl函数)。

2、打开时标志

指明打开文件时影响open行为的一些选项。

3、I/O操作方式标志

使用fd读/写的工作方式。这些标志由open()设置,之后可以用fcntl()获取和改变。

简单地说,O_SYNC、O_DSYNC和O_RSYNC这几个标志的主要作用是使数据直接写到磁盘或直接从磁盘读入。

上一篇 下一篇

猜你喜欢

热点阅读