免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5956 | 回复: 8
打印 上一主题 下一主题

fopen/fread和open/read有什么区别? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-29 14:55 |只看该作者 |倒序浏览
fopen/fread和open/read有什么区别?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2004-11-29 15:32 |只看该作者

fopen/fread和open/read有什么区别?

f是ANSI的C标准库。后面的是UNIX下的系统调用。

论坛徽章:
0
3 [报告]
发表于 2004-11-30 10:18 |只看该作者

fopen/fread和open/read有什么区别?

带f的带有缓冲,是后面的衍生,
直接和硬件打交道,必须是后面的!

论坛徽章:
0
4 [报告]
发表于 2004-11-30 10:34 |只看该作者

fopen/fread和open/read有什么区别?

带f的带有缓冲,是后面的衍生,
直接和硬件打交道,必须是后面的!

论坛徽章:
0
5 [报告]
发表于 2004-11-30 11:28 |只看该作者

fopen/fread和open/read有什么区别?

fopen/fread
是C标准的库函数,操作的对象是: file stream

open/read
是和操作系统有关的系统调用。操作的对象是: “file descriptor”

论坛徽章:
0
6 [报告]
发表于 2004-11-30 11:44 |只看该作者

fopen/fread和open/read有什么区别?

前者fopen/fread的实现是靠调用底层的open/read来实现的.

论坛徽章:
0
7 [报告]
发表于 2004-11-30 12:01 |只看该作者

fopen/fread和open/read有什么区别?

fopen/fread 标准i/o库函数,他们是对系统调用open/read的封装,使用fread可以方便的读取二进制格式文件,特别是面象结构的文件格式,若知道文件按如下结构格式存储:
struct {
     short count;
     long   total;
     char   name[NAMESIZE];
} item;
则可用如下方式读取:
if ( fread(&item, sizeof(item), 1,fp) != 1)
    err_sys("fread error"
函数正确返回后,则以&item起始的地址包含从文件中读取的内容
见apue p100

论坛徽章:
0
8 [报告]
发表于 2004-12-02 10:54 |只看该作者

fopen/fread和open/read有什么区别?

fread返回的是一个FILE结构指针
而read返回的是一个int的文件号

论坛徽章:
0
9 [报告]
发表于 2004-12-02 11:19 |只看该作者

fopen/fread和open/read有什么区别?

多了一个f
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP