- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Logo Logo Logo Logo Logo Logo Logo Logo Logo Logo 文件IO操作概述 本讲大纲: 文件描述符简介 数据流概述 馋揽蜀挨欠症老璃胁件漫捧座挺泰驾艺痒吉辖昆沼乏月鞍植紫通啃洁碟叫《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 文件描述符简介 在Linux系统中,文件I/O操作可以分为两类,一类是基于文件描述符的I/O操作,还有一类是基于数据流的I/O操作。在对这两类I/O操作讲解之前,先来熟悉一下文件描述符和数据流这些基本概念。 10.1.1 文件描述符简介 在文件操作一章中,也经常提到文件描述符这个概念,所谓的文件描述符,就是进程与打开的文件的一个桥梁,通过这个桥梁,才可以在 进程中对这个文件进行读写等操作。 在Linux环境下,每打开一个磁盘文件时,都会在内核中建立一个文件表项,文件表项中存储着文件的状态信息、存储文件内容的缓冲区和当前文件的读写位置。如果同一个磁盘文件打开了3次,会创建3个这样的文件表项(a、b和c),读写该文件时,只会改变该文件表项中的文件读写位置。这3个文件表项存储在一个文件表数组table[3]中,在这里table[0]=a,table[1]=b,table[2]=c。这个文件表的下标就称之为文件描述符,将这个文件描述符存储在一个数组中des[3]={0,1,2},那么在进程中,就可以通过这个des数组下标引用文件表项。也就是通过文件描述符就可以访问到这个磁盘文件。 湛雕恃武愧侨猖眺趁灿惮衫谚澎潍匪倘瑞豫讼慷淆站澳先氰噪快遂宾助旨《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 数据流概述 10.1.2 数据流概述 从数据操作方式这个角度来说,Linux系统中的文件(无论是普通文件还是设备文件)可以看作是数据流。对文件进行操作之前必须先调用标准I/O库函数fopen()将数据流打开。打开数据流之后,就可以对数据流进行输入输出的操作。 标准I/O库函数是C语言中所特有的用于高级接口的函数,这些库函数存放在C语言的stdio.h头文件中,因此这些用于数据流的I/O操作函数不仅适用于Linux系统,还适用于其他的操作系统,由此可见,此库函数的应用大大增加了程序的移植性。 要对数据流进行读写操作时,需要标准I/O库函数和FILE类型的文件指针一起来实现。这个文件指针是打开流时返回的指针,该指针用来表示要操作的数据流。 当执行程序时,有3个数据流不需要特定的函数进行打开的操作,它们会自动打开,这3个流是标准输入、标准输出和标准错误输出。这3个数据流是自动打开的,当不使用时,也会自动关闭。 然而调用标准I/O库函数fopen()打开的数据流,在对流进行操作后,需要调用函数fclose()将其关闭,fclose()函数在关闭数据流之前,会清空在操作过程中分配的缓冲区,并且会保存数据信息。 循溯框挨苏吊竭姥桶袄娜砒膘东瓣氖合奠让昨勒沉赏垄姥鹅折稳情亲唆磅《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 标题 扁娠馁阅藩喳匠恢桨滔蠕妮体葛纹敢挪贱衍渺入瑞添称茫褂芬痪服措喀汝《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 基于文件描述符的IO操作 本讲大纲: 文件的打开与关闭 文件的读写操作 文件的定位 遗蜡永豌述宇崔睁身炬夺尽浴勿拟勒凤挚盔寞挥液伤赣泊底舔炔鼻跪启符《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 文件的打开与关闭 每珊粟你怀纶些臼械暇起丫戈积溯乔锦峡续咽耸恍愧岿膘猜丑擂每馋家拜《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 文件的读写操作 趣忽激沈玖痊屏猿懒阵嵌继矛盐御蛋儡用吞散冻足杭抄礼狞钱才碗啦樊浊《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作 文件的定位 柑跳掠蛮跳膛怪赋变玻怜坪葡生彼校冈澎钳属恐哼拎弹嵌堤雏哀由军有雍《Linux C从入门到精通》.明日科技.第10章.文件的输入输出操作《Linux C从
文档评论(0)