为了账号安全,请及时绑定邮箱和手机立即绑定

C fopen vs open

C fopen vs open

慕少森 2019-08-30 11:18:47
你想要使用的是什么原因(除了语法之外)FILE *fdopen(int fd, const char *mode);要么FILE *fopen(const char *path, const char *mode);代替int open(const char *pathname, int flags, mode_t mode);在Linux环境中使用C时?
查看完整描述

3 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

open()是一个低级别的操作系统。fdopen()将os级文件描述符转换为C语言的更高级FILE抽象。在后台fopen()调用open()并直接给你一个FILE指针。


使用FILE对象而不是原始文件描述符有几个优点,其中包括更易于使用以及其他技术优势,如内置缓冲。特别是缓冲通常导致相当大的性能优势。


查看完整回答
反对 回复 2019-08-30
?
达令说

TA贡献1821条经验 获得超6个赞

fopen vs C开放

1)fopen是一个库函数open是一个系统调用

2)fopen提供缓冲IO被更快比较open非缓冲

3)fopen便携式,而open不是便携式开放是环境的具体)。

4)fopen返回指向FILE结构的指针(FILE *) ; open返回标识文件的整数。

5)A FILE *使您能够使用fscanf和其他stdio函数。


查看完整回答
反对 回复 2019-08-30
  • 3 回答
  • 0 关注
  • 790 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信