Linux下Open函数

Linux下Open函数文章目录 Open 介绍 参数 案例 输出结果 文件描述符 fd Open 介绍 Open 函数用来打开一个文件 建立一个文件描述符到文件路径的映射 建立文件标识 open 函数原型如下所示 include int open const char pathname int oflag 参数 pathname 是要打开或者创建的文件路径名 可以是绝对路径也可以是相对路径

文章目录

Open 介绍

参数

案例

输出结果:

文件描述符fd

Open 介绍

 Open函数用来打开一个文件,建立一个文件描述符到文件路径的映射,建立文件标识。
 open函数原型如下所示:

#include 
int open(const char *pathname, int oflag,...);

参数

pathname是要打开或者创建的文件路径名,可以是绝对路径也可以是相对路径。

oflag:打开文件时,可以传入多个参数选项,用下面的一个或多个进行“或”运算,构成flags; 其中:O_RDONLY—只读打开、 Q_WRONLY—只写打开、O_RDWR—读、写打开 ;这三个变量只能指定一个 ;O_CREAT—若文件不存在,则创建它。需要使用mode(文件权限标志)选项,来指明新文件的访问权限 ;O_APPEND—追加写

#define O_RDONLY             00     /*只读方式打开*/
#define O_WRONLY 01 /*只写方式打开*/
#define O_RDWR 02 /*读写方式打开*/

返回值:成功则返回打开文件的描述符(通常为3),失败则返回-1。
文件标识符0、1、2分别代表标准输入、标准输出和标准错误输出,分别用常量STDIN_FILENO、STDOUT_FILENO和STDERR_FILENO代替。

案例

#include                                                        
using namespace std;

int main()
{
off_t fd;
fd=open("1.txt",O_RDONLY);
cout<
return 0;
}

输出结果:

3

文件描述符fd

 文件描述符在形式上 是一个非负整数。它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。在程序设计中,一些涉及底层的程序编写往往会围绕文件描述符展开。

习惯上,标准输入(standard input)的文件描述符是 0,标准输出(standard output)是 1,标准错误(standard error)是 2。

0,1,2对应的物理设备一一般是:键盘,显示器,显示器。

所以通常当我们成功打开文件时,返回的fd都是从3起。

编程小号
上一篇 2025-04-13 08:46
下一篇 2025-07-10 12:30

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/126733.html