鱼C论坛

 找回密码
 立即注册
查看: 4021|回复: 1

关于O_ACCMODE

[复制链接]
发表于 2013-6-19 05:20:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 喜欢散步 于 2013-6-19 05:48 编辑

用fcntl()函数:
int val = fcntl(atoi(argv[1], F_GETFL, 0);
之后这样:
val & O_ACCMODE
用printf()打印O_ACCMODE后, 值为三, 三进制应为11吧。
而可读, 可写, 可读写, 分别在linux下定义为:0, 1, 2。
如果分别与O_ACCMODE & 的话, 结果不都是一样吗?:
0 & 11 = 0;
1 & 11 = 1;
10  & 11 = 10;
如果用 & 怎么知道是可读可写还是可读写?还有就是O_APPEND我看到头文件<bits/fcntl.h>里面定义为:1000
而用printf("%d", O_APPEND);打印出来是1.24??


小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-6-19 06:54:06 | 显示全部楼层
无回帖,不论坛,这才是人道。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-23 00:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表