曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 4007|回复: 0
打印 上一主题 下一主题

fopen

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34395
跳转到指定楼层
楼主
发表于 2009-2-9 10:27:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-5-7 07:44 , Processed in 0.072139 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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