起航学习网

- 让每个人都能学到最前沿新知识、新技能!
起航学习网
当前位置: 起航学习网 > 短期培训 > 编程语言 > Linux中open与fopen有什么不同?老男孩Linux培训

Linux中open与fopen有什么不同?老男孩Linux培训

时间:2022-07-20 13:39:22来源:未知 作者:老男孩教育 已有: 名学员访问该课程

  快捷搜索:

前言:在学习Linux的时候,不少小伙伴应该都接触过open与fopen,因为只有一个字母之差,所以很多人经常会将它们混淆在一起,那么Linux中open与fopen区别是什么?具体请看下文。 1、来源 从来源的角度看,两者能很好的区分开,这也是最显而易见的区别: ①open是Unix系统调用函数,返回的是文件描述符,它是文件在

  在学习Linux的时候,不少小伙伴应该都接触过open与fopen,因为只有一个字母之差,所以很多人经常会将它们混淆在一起,那么Linux中open与fopen区别是什么?具体请看下文。

  1、来源

  从来源的角度看,两者能很好的区分开,这也是最显而易见的区别:

  ①open是Unix系统调用函数,返回的是文件描述符,它是文件在文件描述符表里的索引;

  ②fopen是ANSIC标准中的C语言库函数,在不同的系统中应该调用不同的内核api。返回的是一个指向文件结构的指针。

  2、移植性

  这一点从上面的来源可以推断出来,fopen是C标准函数,因此拥有良好的移植性,而open是Unix系统调用,移植性有限。如Windows下相似的功能使用API函数CreateFile。

  3、适用范围

  ①open返回文件描述符,而文件描述符是Unix系统下的一个重要概念,Unix下的一切设备都是以文件的形式操作。如网络套接字、硬件设备等。当然包括操作普通正规文件。

  ②fopen是用来操纵普通正规文件。

  4、文件IO层次

  如果从文件IO的角度来看,前者属于低级IO函数,后者属于高级IO函数。低级和高级的简单区分标准是:谁离系统内核更近。低级文件IO运行在内核态,高级文件IO运行在用户态。

  为了让学员学以致用,老男孩教育不断更新Linux培训教学大纲,与一众讲师精心打造Linux云计算SRE课程体系。老男孩教育Linux云计算SRE运维课程,从零基础开始授课,适合零基础且对Linux感兴趣的学员学习。课程的主要目的就是培养出专业的Linux系统工程师,名师授课全程面授教学,边讲边练帮助学员高效掌握Linux技术。

 

文章出自:http://qh.itpxw.cn/peixun/software/2022123405.html

文章标题:Linux中open与fopen有什么不同?老男孩Linux培训



免责声明:本站文章均由入驻起航学习网的会员所发或者网络转载,所述观点仅代表作者本人,不代表起航学习网立场。如有侵权或者其他问题,请联系举报,必删。侵权投诉

(责任编辑:深圳学历教育网)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
培训学校
老男孩教育 访问该机构站点 报名留言 加为好友 用户等级:高级会员 用户级别:0 机构名称:老男孩教育 联 系 人:任女士 联系电话:18710030740 联系手机:18710030740 在线客服:起航学习网客服 在 线 QQ:起航学习网客服 电子邮件:768386696@qq.com 网站域名:https://www.oldboyedu.com/ 注册时间:2019-03-20 15:03 最后登录:2023-02-02 13:02
推荐内容