open()参数宏的意义 O_TRUNC

C语言中一些基本函数

http://c.chinaitlab.com/basic/764984_23.html

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系统

原文地址:https://www.cnblogs.com/leaven/p/1744274.html