Chinaunix首页 | 论坛 | 博客
  • 博客访问: 467176
  • 博文数量: 93
  • 博客积分: 5006
  • 博客等级: 上校
  • 技术积分: 1002
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-30 13:58
文章分类

全部博文(93)

文章存档

2012年(2)

2011年(68)

2010年(23)

分类: LINUX

2011-05-24 12:28:06

open函数:
所需头文件:#include  /*提供类型pid_t,size_t的定义*/
#include
#include
函数原型: int open(const char *pathname, flags, int perms)

返回值:成功则返回文件描述符,否则返回 -1
pathname: 被打开的文件名或路径名。

flags文件打开的方式。

flags这个参数可由以下常量(定义于 fcntl.h)通过逻辑或构成。

O_RDONLY        只读模式打开文件

O_WRONLY       只写模式打开文件
    O_RDWR            读写模式打开文件

打开/创建文件时,至少得使用上述三个常量中的一个。以下常量是选用的:

 O_APPEND       每次写操作都写入文件的末尾
        O_CREAT         如果指定文件不存在,则创建这个文件
       O_EXCL          如果要创建的文件已存在,则返回 -1,并且修改 errno 的值
       O_TRUNC         如果文件存在,并且以只写/读写方式打开,则清空文件全部内容
       O_NOCTTY        如果路径名指向终端设备,不要把这个设备用作控制终端
       O_NONBLOCK     如果路径名指向 FIFO/块文件/字符文件,则把文件的打开和后继  I/O设置为非阻塞模式

以下三个常量同样是选用的,它们用于同步输入输出

O_DSYNC        等待物理 I/O 结束后再 write。在不影响读取新写入的数据的前提下,不等待文件属性更新。
      O_RSYNC         read 等待所有写入同一区域的写操作完成后再进行
      O_SYNC          等待物理 I/O 结束后再 write,包括更新文件属性的 I/O

perms 访问权限位,用8进制法表示。一般仅在需要创建文件时使用。

注意: 在open函数中,flags参数可以通过"|"组合,但是前三个中只能取一个使用。


close函数

所需头文件: #include

函数原型:   int close(int fd)

返回值: 成功返回0,失败返回-1。

fd: 文件描述符


fopen ,fclose 是C99标准中的,open close 是GNUC中的
阅读(2279) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

GFree_Wind2011-05-25 12:04:59

open close 是不带缓存的函数---------在操作系统中,一样是有缓存的。