Linux学习(文件二)

来源:互联网 发布:俄罗斯奥运会禁赛知乎 编辑:程序博客网 时间:2024/06/16 17:59

例:(系统调用 - 打开)

#include <sys/types.h>

#include <sys/stat.h>

#include <fcntl.h>

Int open(const char*pathname,int flags);

Int open(const char*pathname,int flags,mode_t mode);

返回值:成功返回新分配的文件描述符,出错返回-1并设置error。

参数含义:pathname是要打开或创建的文件的名字。

 flags参数可用来说明此函数的多个选择项。

 mode对于open函数而言,仅当创建新文件时才使用的第三个参数。

Flags参数

以下可选项可以同时指定0个或多个,和必须项按位或起来作为flag参数。

O_creat若此文件不存在则创建它。使用此选择项时,需同时说明第三个参数mode,用其说明该文件的存取权限。

O_NONBLOCK如果pathname指的是一个块特殊文件或一个字符特殊文件,则此选择项为此文件的本次打开操作和后续的I/O操作设置非阻塞方式。

以下三个常数中必须制定一个,且仅允许制定一个(这些常数定义在<fcntl.h>头文件中)

O_RDONLY 只读打开

O_WRONLY 只写打开

O_RDWR   读、写打开

Mode参数:每个文件有9个权限位(permission bits),这些权限位构成了mode的取值:如0755.

0 0
原创粉丝点击