曲径通幽论坛

标题: fopen [打印本页]

作者: beyes    时间: 2009-2-9 10:27
标题: fopen
fopen 库函数类似于 open系统调用。主要用在文件和终端的输入输出。

在需要详细控制设备的地方,

使用
#include <stdio.h>
FILE *fopen(const char *filename, const char *mode);

fopen 打开由 filename 参数命名的文件并且给它关联上一个流(stream).mode 参数说明文件应该如何打开--如下面的方法所示:
"r" or "rb" : 只读
"w" or "wb" : 打开并写,
"r+" or "rb+" or "r+b" : 打开并 update
"w+" or "wb+" or "w+b" : 打开并update,删去原内容
"a+" or "ab+" or "a+b" : 打开并update,在文件末尾追加
上面,b 表示文件是个二进制文件而不是纯文本文件

注意,不像 MS-DOS,UNIX和Linux 对待纯文本文件没有什么区别,UNIX 和 Linux 对待所有文件严格一样。在上面的 mode 参数中,必须是一个字符串,而不是一个字符。也总是使用双引号而不是但引号!

如果成功,fopen 返回一个非空的 FILE * 指针。如果失败,则返回 NULL ,这被定义在 stdio.h 文件中。

可用的流(stream)数目是有限的,同样的,文件描述符也是有这样的限制。在 stdio.h 中定义了 FOPEN_MAX 表示限制的数目,在 linux 里,这数至少是8,或者典型的为 16。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2