open(const char * path, int flag.../*mode_t*/) | #include <fcntl.h> |
path:绝对路径 flag:O_RDONLY,O_WRONLY,O_RD_WR只能选一个,其他的flag通过"|"(或)添上。 |
作用:打开一个文件,或创建一个文件 |
#include <unistd.h> | fd:文件描述符 | 作用:关闭文件 | |
ssize_t read(int fd, void *buf, size_t nbytes) | #include<unistd.h> | fd:文件描述符;buf:泛型的数组指针; nbytes: sizeof(buf) | read与fread的区别:read无缓冲读;fread有缓冲读,fread通过"\n"或fflush刷新,不过在3G-4G的内核空间存在缓冲区 |
ssize_t write(int fd, const void *buf, size_t nbytes) | #include<unistd.h> | fd与buf同read;nbyte:strlen(buf) | 与read大致一致 |
off_t lseek(int fd, off_t offset, int whence) | #include <unistd.h> | whence:(1)SEEK_SET (2)SEEK_CUR (3)SEEK_END |
SEEK_SET:文件开头 SEEK_CUR:光标所在位置 SEEK_END:文件末尾 成功返回值 = whence + offset |
int fcntl(int fd, int cmd,..../*arg*/) | #include <fcntl.h> | cmd:F_DUPED(复制fd):F_GETFD,F_SETFD(获取fd,set fd):F_GETFL,F_SETFL(获取文件状态, set文件状态) | 作用:改变打开文件的属性 |
2016-03-04 08:54:02