在Linux操作系统中,万物皆文件(everything is file),而今天进行复习的就是文件I/O,文件I/O基于POSIX标准,在进行文件I/O的过程中,每一次操作都会进行系统调用,增加大量系统开销,而我们后面讲到的标准I/O就大大弥补这一个缺陷。
首先我们从最基础的open
函数开始:
int open(const char *pathname, int flags, mode_t mode);
pathname :文件名或者路径名。
flags:文件打开方式。
mode:文件存取权限。
下面我们一一的来说明这些参数:
文件名和路径名需要放在” “中,举个例子open(“hello.txt”)
一个文件有多个文件打开方式,这些flag参数可以通过”|”操作组合在一起,下面列出几个常见的flag参数:
O_RDONLY,O_WRONLY,O_RDWR
,这三个参数不能相互组合。
O_RDONLY
:表示以只读方式打开文件,类似于标准I/O中的”r”权限。
O_WRONLY
:表示以只写方式打开文件,类似于标准I/O中的”w”权限。
O_RDWR
:表示以读写方式打开文件,类似于标准I/O中的”r+”权限。
O_