1、引言
UNIX的大多数文件IO只需用5个函数:open,read,write,lseek,close。都为不带缓冲的IO。
2、文件描述符
对于内核而言,所有打开的文件都通过文件描述符引用。打开一个文件或创建一个文件,内核向进程返回一个文件描述符。
幻数0、1、2分别由STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO代替。这些幻数定义在中。文件描述符从0-OPEN_MAX。
3、open函数
#include <fcntl.h>
int open(const char *pathname, int oflag, ... /* mode_t mode */);
返回值:若成功返回文件描述符,失败返回-1。
oflag参数:
O_RDONLY(必选)
O_WRONLY(必选)
O_RDWR(必选)
O_APPEND
O_CREAT
O_EXCL
O_TRUNC
O_NOCTTY
O_NONBLOCK
O_DSYNC
O_RSYNC
O_SYNC
4 creat函数
#include <fcntl.h>
int creat(const char *pathname, mode_t mode);