首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

open函数返回值为0

我们在对这个fd作判断的时候,经常会用到: fd = open(filename, O_RDONLY); If (fd <= 0) { Printf(“open %s error...返回值: 调用成功时返回一个文件描述符fd 调用失败时返回-1,并修改errno 正确的判断应该是 if(fd < 0),那我们什么时候会fd=0呢,如果fd=0,那么已经正常打开了,但是我们判断了打开错误了...open函数返回的文件描述符fd一定是未使用的最小的文件描述符,那么如果0没有使用,那么我们open的时候,首先就会获取到fd=0的情况。...如果我们在open之前,close其中的任何一个,则open的时候,则会用到close的最小的值: close(0); fd = open(filename,O_RDONLY)...; printf(“fd = %d\n”, fd); 则可以发现我们就可以open的时候,返回了0的fd.

2.5K20
您找到你想要的搜索结果了吗?
是的
没有找到

LinuxOpen函数

文章目录 Open 介绍 参数 案例 输出结果: 文件描述符fd Open 介绍  Open函数用来打开一个文件,建立一个文件描述符到文件路径的映射,建立文件标识。  ...open函数原型如下所示: #include int open(const char *pathname, int oflag,...); 参数 pathname是要打开或者创建的文件路径名...文件标识符0、1、2分别代表标准输入、标准输出和标准错误输出,分别用常量STDIN_FILENO、STDOUT_FILENO和STDERR_FILENO代替。...习惯上,标准输入(standard input)的文件描述符是 0,标准输出(standard output)是 1,标准错误(standard error)是 2。...0,1,2对应的物理设备一一般是:键盘,显示器,显示器。 所以通常当我们成功打开文件时,返回的fd都是从3起。

3K10

linux启用虚拟终端open命令

open命令的作用是可以启用虚拟终端,然后执行指定的命令。 虚拟终端类似于你目前使用的终端。它们用于执行命令和提供输入。唯一的区别是你不能将鼠标与虚拟终端一起使用。...当你登录linux服务器的时候,默认只能使用虚拟终端。此外,即便是普通的桌面环境,当你需要重新配置图形界面,或者图形界面因为内部异常等原因崩溃了的时候,你还可以切换到虚拟终端继续执行操作。...语法格式:open [参数] [命令] 常用参数: -l 登录环境 -u 启用新的终端 -s 切换到终端 -v 显示详细信息 -w 进入等待状态 -c 指定终端 参考实例 启用新的终端10...,然后执行命令: [root@linuxcool ~]# open -c 10 - date 显示终端详细信息: [root@linuxcool ~]# open -v 使终端进入等待状态: [root...@linuxcool ~]# open -w

4.3K00

linux启用虚拟终端open命令

open命令的作用是可以启用虚拟终端,然后执行指定的命令。 虚拟终端类似于你目前使用的终端。它们用于执行命令和提供输入。唯一的区别是你不能将鼠标与虚拟终端一起使用。...当你登录linux服务器的时候,默认只能使用虚拟终端。此外,即便是普通的桌面环境,当你需要重新配置图形界面,或者图形界面因为内部异常等原因崩溃了的时候,你还可以切换到虚拟终端继续执行操作。...语法格式:open [参数] [命令] 常用参数: -l 登录环境 -u 启用新的终端 -s 切换到终端 -v 显示详细信息 -w 进入等待状态 -c 指定终端 参考实例 启用新的终端10...,然后执行命令: [root@linuxcool ~]# open -c 10 - date 显示终端详细信息: [root@linuxcool ~]# open -v 使终端进入等待状态: [root...@linuxcool ~]# open -w

6.9K00

Linux C中的open函数「建议收藏」

open函数属于Linux中系统IO,用于“打开”文件,代码打开一个文件意味着获得了这个文件的访问句柄。...int fd = open(参数1,参数2,参数3); int fd = open(const char *pathname,int flags,mode_t mode); 1.句柄(file descriptor...简称fd) 首先每个文件都属于自己的句柄,例如标准输入是0,标准输出是1,标准出错是2。...2.使用open前需要先包含头文件 #include #include #include 3.参数1(pathname) 即将要打开的文件路径...以可读可写方式打开 三这是互斥的 副类: O_CREAT 如果文件不存在则创建该文件 O_EXCL 如果使用O_CREAT选项且文件存在,则返回错误消息 O_NOCTTY 如果文件为终端,那么终端不可以调用open

2.8K10

Linux实用命令之xdg-open

为什么要介绍 xdg-open 呢,得先从需求说起。 一般在控制台中,可以使用命令操作各式文本文件。但难以避免,需要操作一些非文本文件,如 pdf,doc 等。...其实可以不选择,因为掌握了xdg-open之后,上面两种方式,就两者皆可抛了。...xdg-open用法非常简单,就直接参数传入要打开的文件,等效于鼠标双击打开,系统会根据文件类型自动调用对应的程序,如 xdg-open xxx.doc xdg-open xxx.pdf xdg-open...xxx.png 如果传入路径的话,则是使用文件管理器打开 xdg-open . xdg-open ~/Downloads 还可以传入网址 xdg-open www.google.com 一招鲜吃遍天...,但讲道理 xdg-open 还是比较难输入的,为了更顺手,可以考虑添加适合自己的alias,比如我就添加了 alias dakai='xdg-open' alias 打开='xdg-open' 拼音中文双管齐下

4.6K20

0基础Linux自学之路

Linux的设计思想是基于Unix的哲学,注重简洁、灵活和可扩展性。Linux内核是Linux操作系统的核心部分,它负责管理计算机的硬件资源和提供系统调用接口。...Linux内核&发行版Linux内核是Linux操作系统的核心部分,它负责管理计算机的硬件资源和提供系统调用接口。...Linux内核版本Linux内核的版本号是由三个部分组成:主版本号、次版本号和修订号。例如,Linux内核的版本号可以是5.3.0。...用户可以根据自己的需求选择适合的Linux内核版本。Linux发行版本Linux发行版是基于Linux内核的操作系统,它包含了用户界面、系统工具和应用软件。...Linux命令练习熟练掌握常用的Linux命令对于学习和使用Linux系统非常重要。下面是一些常见的Linux命令练习:常用命令:掌握一些常用的Linux命令,如cd、ls、pwd等。

19920

Linux环境下的open函数分析(二)

-----哈哈哈,小伙伴们,今天的分享是接着昨天的open函数,继续分析它里面的用法(如有错的地方,还望各位帮忙指出错误,我好纠正),好了废话不多说了,开始干货分享啦!...这里表明当我们打开一个不存在的文件时,在使用open函数里面形参flag为O_CREAT,它就会自动创建这个不存在的文件。...There is one exception: on Linux 2.6 and later, O_EXCL can be used without O_CREAT...If link(2) returns 0, the lock is successful....这里大概是讲了:在linux内核2.6版本以及后面的版本可以单独使用O_EXCL对块设备来说的话,一般的话O_EXCL和O_CREAT是要结合一起来用的(这样做的目的是当我们去创建一个新的文件,如果我们不小心在写代码输入还是之前已经存在的文件

1.1K10
领券