O_RDWR, O_CREAT等open函数标志位在哪里定义?

查了下O_RDWR, O_CREAT等定义,终于找到了。

我的系统是Fedora12, 其定义在文件:/usr/include/asm-generic/fcntl.h,部分定义如下:

#include <linux/types.h>/* open/fcntl - O_SYNC is only implemented on blocks devices and on fileslocated on an ext2 file system */
#define O_ACCMODE	00000003
#define O_RDONLY	00000000
#define O_WRONLY	00000001
#define O_RDWR		00000002
#ifndef O_CREAT
#define O_CREAT		00000100	/* not fcntl */
#endif
#ifndef O_EXCL
#define O_EXCL		00000200	/* not fcntl */
#endif
#ifndef O_NOCTTY
#define O_NOCTTY	00000400	/* not fcntl */
#endif
#ifndef O_TRUNC
#define O_TRUNC		00001000	/* not fcntl */
#endif
#ifndef O_APPEND
#define O_APPEND	00002000
#endif
#ifndef O_NONBLOCK
#define O_NONBLOCK	00004000
#endif
#ifndef O_SYNC
#define O_SYNC		00010000
#endif
#ifndef FASYNC
#define FASYNC		00020000	/* fcntl, for BSD compatibility */
#endif
#ifndef O_DIRECT
#define O_DIRECT	00040000	/* direct disk access hint */
#endif
#ifndef O_LARGEFILE
#define O_LARGEFILE	00100000
#endif
#ifndef O_DIRECTORY
#define O_DIRECTORY	00200000	/* must be a directory */
#endif
#ifndef O_NOFOLLOW
#define O_NOFOLLOW	00400000	/* don't follow links */
#endif
#ifndef O_NOATIME
#define O_NOATIME	01000000
#endif
#ifndef O_CLOEXEC
#define O_CLOEXEC	02000000	/* set close_on_exec */
#endif
#ifndef O_NDELAY
#define O_NDELAY	O_NONBLOCK
#endif


注意:

#define O_RDONLY    00000000
#define O_WRONLY    00000001
#define O_RDWR        00000002

所以:O_RDONLY | O_WRONLY = 1 ,并不等于O_RDWR。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/405565.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt弹出的窗口始终位于界面最前面的方法

一、描述 自定义窗口控件标志用于启用自定义窗口控件。调用setWindowFlags&#xff08;type&#xff09;函数。 type参数&#xff1a; Qt::CustomizeWindowHint 关闭默认窗口标题提示。Qt::WindowTitleHint 给窗口一个标题栏Qt::WindowSystemMenuHint添加窗口系统菜单&…

VIM 替换(转)

VIM中常用的替换模式总结。0&#xff0c;:g/null/d找到null的行并且删掉1&#xff0c;简单替换表达式替换命令可以在全文中用一个单词替换另一个单词&#xff1a;:%s/four/4/g“%” 范围前缀表示在所有行中执行替换。最后的 “g” 标记表示替换行中的所有匹配点。如果仅仅对当前…

下列可以产生斜体字的html标签是,电子科技大学《网页设计与制作》20秋期末考试题目【标准答案】...

电子科技大学《网页设计与制作》20春期末考试试卷总分:100 得分:100一、单选题 (共 40 道试题,共 100 分)1.如何产生带有数字列表符号的列表&#xff1f;A.B.C.D.2.能够设置成口令域的是( )A.只有单行文本域B.只有多行文本域C.单行、多行文本域D.多行“Textarea”标识3.定制表…

Solution 7: 判断两链表是否相交

问题描述 RT. 解决思路 (1) 两链表都是单向链表&#xff1a;判断两链表的末尾节点是否相同&#xff1b; (2) 两链表中一个有环&#xff0c;一个没环&#xff1a;不可能相交&#xff1b; (3) 两链表都有环&#xff1a;slow-fast双指针方法。 程序 public class ListIntersection…

Qt程序窗口关闭不退出而最小化到托盘的方法

一、描述 为避免错点关闭按钮&#xff0c;使得软件关闭退出。需要开发一种类似于QQ桌面之类的功能&#xff0c;点击关闭按钮并不退出&#xff0c;开发的应用程序在用户鼠标点击右上角的关闭按钮时&#xff0c;程序不退出&#xff0c;缩小到右下角&#xff0c;进入托盘。例如wi…

UltraEdit如何自动换行

UltraEdit是一款功能强大的文本工具&#xff0c;可以用于编程。安装UltraEdit之后&#xff0c;默认的设置没有自动换行。设置的方法是&#xff0c;点击菜单栏的“高级→配置”&#xff0c;找到“编辑器→自动换行/制表符设置”&#xff0c;如下图的左边。然后&#xff0c;把“默…

老华为可以升级鸿蒙,真良心!五年前老机型都能升级华为鸿蒙

真良心&#xff01;五年前老机型都能升级华为鸿蒙来源&#xff1a;搜狐网作者&#xff1a;小码说娱乐时间&#xff1a;2021-06-03 12:01:21经过多年的摔打&#xff0c;鸿蒙终于迎来了新生。而在6月2日(今天)晚上的发布会上&#xff0c;令我们感到震惊的不仅仅是华为的新品&…

XSS代码注入框架

首先需要了解一下几点&#xff1a; 1.浏览器中Javascript变量的生命周期 Javascript变量的生命周期并不是你声明这个变量个窗口闭就被回收&#xff0c;只要有引用就会一直持续到浏览器关闭。 2.window对象下方法会在在窗口被关闭时清掉&#xff0c;比如&#xff1a; window.set…

html转换vmax,CSS里px、em、rem、%、vw、vh、vmin、vmax这些单位的区别

不要删除CSS中常见的单位px&#xff1a;最常见的&#xff0c;页面按照精准样式展示&#xff0c;属于绝对单位em&#xff1a;基准点为父节点字体的大小&#xff0c;如果自身定义了font-size按自身来计算&#xff1b;也就是说这个em不是一个固定值&#xff0c;属于相对单位rem&am…

Qt中使用QFile对文本文件的读写

一、思路 1、Qt打开关闭文件用到QFile,包含头文件#include <QFile> 2、文件的读写用标准QTextStream&#xff0c;包含头文件#include <QTextStream> 二、具体实现 //打开fileQFile file(ui->lineEdit_filepath->text());if(!file.open(QIODevice::ReadWri…

Linux下定时器使用

From: http://blog.csdn.net/gudulyn/article/details/885334 Linux下的定时器有两种&#xff0c;以下分别介绍&#xff1a; 1、alarm 如果不要求很精确的话&#xff0c;用 alarm() 和 signal() 就够了 unsigned int alarm(unsigned int seconds)…

T-SQL SUM Functions

SQL Server SUM()函数&#xff0c;计算字段值和&#xff0c;不包括NULL值。 下面例子中&#xff0c;计算所有职员薪金总值&#xff1a; 数据源&#xff1a; SQL语句&#xff1a; SELECTSUM([Salary]) AS[Totals]FROM[dbo].[Member]执行结果&#xff1a;

React开发(235):document.body.clientHeight

document.body.clientHeight获取可视化高度

Qt模态界面设置setWindowModality禁止其他界面响应

一、模态与非模态 模态&#xff1a;启动模态界面时&#xff0c;例如弹出对话框强制用户从其他正在进行的业务中聚焦到当前对话框&#xff0c;除了该对话框整个应用程序窗口都无法接受用户响应&#xff0c;无法切换界面&#xff0c;无法切换当前Qt应用。这可以保证用户按照自己…

html定位fix,html 定位fixed

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。编程之家小编现在分享给大家&#xff0c;也给大家做个参考。123#sub1{width:50px;height:80px;border:1px solid #dcdcdc;}#sub2{position:fixed;top:250px;right:20px;width:50px;height:80px;border:1px solid #dcdcdc;m…

OpenCV-CL: OpenCL加速计算机视觉技术

大家好&#xff01;我借这篇文章&#xff0c;分享给大家今年计算机视觉领域里的一些令人兴奋不已的最新进展。特别是最新OpenCV&#xff08;当前最流行的计算机视觉库&#xff09;的发布&#xff0c;您的计算机视觉应用程序可以在现代异构计算平台上充分利用CPU和GPU的全部计算…

如何在Microwindows中显示图片和安装字体

From: http://bbs.chinaunix.net/thread-1987116-1-1.html 一、前言Microwindows可以运行在 支持Framebuffer的 32位的 Linux系统上&#xff0c;或者也可以使用著名的 SVGALib[45] 库来进行图形显示。此外&#xff0c;它还被移植到16位的EL KS 和实模式的MSDOS上。Microwindows…

VS2008创建dll,并使用dll

原来一直使用vc6.0做开发&#xff0c;但是公司主要使用vs2008工具&#xff0c;刚开始使用的时候感觉非常不好用&#xff0c;但是一周下来&#xff0c;不禁感叹&#xff0c;还是新的好啊&#xff0c;嘿嘿&#xff01; 这里总结一下vs2008下创建dll并使用dll导出函数的方法&#…