文件open函数的参数

这里曾遇到过O_TRUNC 这个参数,当时没看明白啥意思,后来弄了个例子,英文不好的桑不起啊。

 

  int _open(char *pathname,int access)为读或写打开一个文件,
  按后按access来确定是读文件还是写文件,access值见下表
  ┌──────┬────────────────────┐
  │access值  │意义                  │
  ├──────┼────────────────────┤
  │O_RDONLY │读文件 │
  │O_WRONLY │写文件 │
  │O_RDWR │即读也写 │
  │O_NOINHERIT │若文件没有传递给子程序,则被包含 │
  │O_DENYALL │只允许当前处理必须存取的文件 │
  │O_DENYWRITE │只允许从任何其它打开的文件读 │

  │O_DENYREAD │只允许从任何其它打开的文件写 │
  │O_DENYNONE │允许其它共享打开的文件 │
  └──────┴────────────────────┘
  int open(char *pathname,int access[,int permiss])为读或写打开一个文件,
  按后按access来确定是读文件还是写文件,access值见下表
  ┌────┬────────────────────┐
  │access值│意义 │
  ├────┼────────────────────┤
  │O_RDONLY│读文件 │
  │O_WRONLY│写文件 │
  │O_RDWR │即读也写 │
  │O_NDELAY│没有使用;对UNIX系统兼容 │
  │O_APPEND│即读也写,但每次写总是在文件尾添加 │
  │O_CREAT │若文件存在,此标志无用;若不存在,建新文件 │
  │O_TRUNC │若文件存在,则长度被截为0,属性不变 │
  │O_EXCL │未用;对UNIX系统兼容 │
  │O_BINARY│此标志可显示地给出以二进制方式打开文件 │
  │O_TEXT │此标志可用于显示地给出以文本方式打开文件│
  └────┴────────────────────┘
  permiss为文件属性,可为以下值:
  S_IWRITE允许写 S_IREAD允许读 S_IREAD|S_IWRITE允许读、写
  int creat(char *filename,int permiss) 建立一个新文件filename,并设定读写性。permiss为文件读写性,可以为以下值S_IWRITE允许写 S_IREAD允许读 S_IREAD|S_IWRITE允许读、写
  int _creat(char *filename,int attrib) 建立一个新文件filename,并设定文件属性。attrib为文件属性,可以为以下值FA_RDONLY只读 FA_HIDDEN隐藏 FA_SYSTEM系统
  int creatnew(char *filenamt,int attrib) 建立一个新文件filename,并设定文件属性。attrib为文件属性,可以为以下值FA_RDONLY只读 FA_HIDDEN隐藏 FA_SYSTEM系统

posted @ 2012-03-27 16:59  陈朋  阅读(2750)  评论(0编辑  收藏  举报