1.open 函数:(open 系统调用用来打开或创建一个文件)
函数原型为:
#include
#include
#include
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
pathname : 是要打开或创建的含路径的文件名
flags : 打开文件的方式
O_RDONLY : 只读方式打开文件
O_WRONLY : 只写方式打开文件
O_RDWR ; 可读可写方式打开文件
(这三种打开方式互斥,但是它们可以分别与下列标志进行或运算)
O_CREAT : 文件不存在自动创建文件,只有此时用到第三个参数mode说明新文件的存取权限
O_EXCL : 如果O_CREAT也被设置,此指令会检查文件是否存在.不存在则创建该文件,存在则导致打开文件错误.
O_TRUNC : 若文件存在且以可写方式打开,原文件保存数据将丢失,但文件属性不变.
O_APPEND : 所写入的数据会以追加的方式添加到文件后面.
O_SYNC : 已同步方式打开文件,任何对文件的修改都会阻塞直到物理磁盘上的数据同步以后才返回.
当且仅当第二参数使用了O_CREAT时,新文件的实际存取权限是mode和umask按照(mode& ~unmask)运算以后的结果.
成功调用O_CREAT函数会返回一个文件描述符,若有错误会返回-1.
2.creat 函数(完成文件的创建)
函数原型:
#include
#include
#include
int creat(const char *pathname, mode_t mode);
pathname:要打开或创建的文件名,若指向的文件不存在,则创建一个新文件,若存在,则新文件覆盖原文件.
成功调用creat会返回一个文件描述符,若有错误会返回-1.
(注:creat只能以只写的方式打开创建的文件,creat无法创建设备文件,设备文件的创建要使用mknod函数)
3.close函数(用来关闭一个打开的文件)
函数原型:
#include
int close (int fd);
fd:需要关闭的文件的文件描述符.
当close 调用成功返回0,发生错误会返回-1.
(注:close函数调用成功时并不能保证数据可以全部写回硬盘)
函数原型为:
#include
#include
#include
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
pathname : 是要打开或创建的含路径的文件名
flags : 打开文件的方式
O_RDONLY : 只读方式打开文件
O_WRONLY : 只写方式打开文件
O_RDWR ; 可读可写方式打开文件
(这三种打开方式互斥,但是它们可以分别与下列标志进行或运算)
O_CREAT : 文件不存在自动创建文件,只有此时用到第三个参数mode说明新文件的存取权限
O_EXCL : 如果O_CREAT也被设置,此指令会检查文件是否存在.不存在则创建该文件,存在则导致打开文件错误.
O_TRUNC : 若文件存在且以可写方式打开,原文件保存数据将丢失,但文件属性不变.
O_APPEND : 所写入的数据会以追加的方式添加到文件后面.
O_SYNC : 已同步方式打开文件,任何对文件的修改都会阻塞直到物理磁盘上的数据同步以后才返回.
当且仅当第二参数使用了O_CREAT时,新文件的实际存取权限是mode和umask按照(mode& ~unmask)运算以后的结果.
成功调用O_CREAT函数会返回一个文件描述符,若有错误会返回-1.
2.creat 函数(完成文件的创建)
函数原型:
#include
#include
#include
int creat(const char *pathname, mode_t mode);
pathname:要打开或创建的文件名,若指向的文件不存在,则创建一个新文件,若存在,则新文件覆盖原文件.
成功调用creat会返回一个文件描述符,若有错误会返回-1.
(注:creat只能以只写的方式打开创建的文件,creat无法创建设备文件,设备文件的创建要使用mknod函数)
3.close函数(用来关闭一个打开的文件)
函数原型:
#include
int close (int fd);
fd:需要关闭的文件的文件描述符.
当close 调用成功返回0,发生错误会返回-1.
(注:close函数调用成功时并不能保证数据可以全部写回硬盘)