初级I/O编程: open函数和creat函数
(1).open函数
名称:打开或若指定打开的文件不存在则创建
总揽:
#include
int open(const char *pathname,int flags,mode_t mode)
int open(const char *pathname,int flags)
参数说明:
pathname:一个字符串参数,用来指定一个打开的文件名,包含完整路径,
若不含路径则默认为当前目录。
flags:一个整数参数,用来指定打开文件的访问方式,可能的值:
O_APPEND:以追加方式打开
O_RDONLY:以只读方式打开
O_WRONLY:以只写方式打开
O_RDWR:以读写方式打开
O_CREAT:若指定的文件不存在则创建指定的文件
mode:一个整数参数,用来指定创建文件的权限,可以为数字,或宏
S_IRWXU:指定创建文件的用户的权限为可读,可写,可执行,等价00700
S_IRUSR:指定创建文件的用户的权限为可读,等价00400
S_IWUSR:指定创建文件的用户的权限为可写,等价00200
S_IXUSR:指定创建文件的用户的权限为可执行,等价00100
S_IRWXG:指定群组的权限为可读,可写,可执行,等价00070
S_IRGRP:指定群组的权限为可读,等价00040
S_IWGRP:指定群组的权限为可写,等价00020
S_IXGRP:指定群组的权限为可执行,等价00010
S_IRWXO:指定其他用户的权限为可读,可写,可执行,等价00007
S_IROTH:指定其他用户的权限为只读,等价00004
S_IWOTH:指定其他用户的权限为只写,等价00002
S_IXOTH:指定其他用户的权限为只执行,等价00001
返回值:
执行成功返回一个文件描述符(一个小的,非负的整数)
执行失败则返回-1
说明:若指定flags为O_CREAT则必须指定mode参数
(2).creat函数
名称:创建一个文件,返回一个文件描述符
总揽:
#include
int creat(const char *pathname,mode_t mode)
参数:
参见上面
实例:
#include
#include
#include
/*
用法: 函数名 文件名
描述:这个函数的作用是打开指定的文件,若文件不存在则创建指定的文
件,并打开
*/
int main(int argc,char *argv[])
{
int fd;
if(argc<2)
{
printf("Usage:%s Filename\n",argv[0]);
exit(1);
}
if((fd=open(argv[1],O_RDWR|O_CREAT,00777))<0)
{
printf("Faile to open file\n");
exit(2);
}
else{
printf("Success to open file\n");
printf("File Description is %d\n",fd);
}
return 0;
}
阅读(674) | 评论(0) | 转发(0) |