- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在前面各章程序中所用到数据
第8章 文件 ;8.1 文件概述
8.1.1 文件的概念及分类
所谓“文件”是指一组相关数据的有序集合。这个数据集合有一个名称,即文件名。实际上在前面的各章中已经多次使用了文件,例如源程序文件、目标文件、可执行文件、库文件 (头文件)等。在本章学习C语言的数据文件。
文件通常是驻留在外部介质(如磁盘等)上的,在使用时才调入内存中来。从不同的角度可对文件作不同的分类。
从用户的角度看,文件可分为普通文件和设备文件两种。
2. 从文件的读写方式来看,文件可分为顺序读写文件和随机存取文件。
3. 从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。 ;8.1.2 文件的操作流程
1.建立/打开文件
2.从文件中读取数据或向文件中写数据
3.关闭文件
8.1.3 文件缓冲区
从用户角度看,文件的写操作是将程序的输出结果,即某个变量或数组的内容输出到文件中,而实际上,在计算机系统中,数据是从内存中的程序数据区,到文件缓冲区暂存,当缓冲区放满后,数据才被整块送到外存储器上的文件中。在进行文件的读操作时,将磁盘文件中的一块数据一次读到文件缓冲区中,然后从缓冲区中取出程序所需的数据,送入程序数据区中的指定变量或数组元素所对应的内存单元中。 ;8.1.4 文件指针
在文件读写过程中,系统需要确定文件信息、当前的读写位置、缓冲区状态等信息,才能顺利实现文件操作。在C语言中用一个指针变量指向一个文件,这个指针称为文件指针。
定义文件指针的一般形式为:
FILE *指针变量标识符;
其中FILE应为大写,它实际上是由系统定义的一个结构体,该结构体中含有文件名、文件状态和文件当前位置等信息。 ;8.2 文件的打开与关闭
文件在进行读写操作之前要先打开,使用完毕要关闭。所谓打开文件,实际上是建立文件的各种有关信息,并使文件指针指向该文件,以便对它进行读/写操作。关闭文件则断开指针与文件之间的联系,也就禁止再对该文件进行操作。
在C语言中,文件操作都是由库函数来完成的。 ;8.2.2 文件的关闭(fclose函数)
文件一旦使用完毕,应该使用关闭文件函数把文件关闭,以避免的文件数据的丢失或文件被再次误用。
fclose函数调用的一般形式是:
fclose(文件指针);
例如:
fclose(fp);
在程序中,一个文件使用完毕后,应该及时关闭。特别应该注意,在程序结束之前关闭所有打开的文件,防止数据的丢失。这是因为,当向文件写数据时,是先将数据写到缓冲区,待缓冲区充满后才整块传送到磁盘文件中。如果程序结束时,缓冲区尚未充满,则其中的数据并没有传到磁盘上,必须使用fclose函数关闭文件,强制系统将缓冲区中的所有数据送到磁盘,并释放该文件指针变量,否则这些数据可能只是被输出到了缓冲区中,而并没有真正写入磁盘文件。
;8.3 文件的顺序读写
在8.1节中谈到,根据文件的读写方式不同,文件可分为顺序读写文件和随机读写文件,本节主要讨论文件的顺序存取,关于文件随机存取的相关内容将在下一节中讨论。
文件的顺序存取是指将文件从头到尾逐个数据读出或写入,文件的读写是通过读写函数实现的。
8.3.1 字符读写函数fgetc和fputc
1.???? 读字符函数fgetc
fgetc函数的功能是从指定的文件中读一个字符,函数的调用形式为:
字符变量=fgetc(文件指针);
2.写字符函数fputc
fputc函数的功能是把一个字符写入指定的文件中,函数调用的形式为:
fputc(字符量,文件指针);
其中,待写入的字符量可以是字符常量或变量 ;8.3.2? 字符串读写函数fgets和fputs
fgets()和fputs()函数是以字符串为单位对文件进行读写的,由于这两个函数在使用中往往是一次读写一行,所以也称为行读写函数。
1.???? 读字符串函数fgets
fgets函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为:
fgets(字符数组名,n,文件指针);
其中的n是一个正整数。表示从文件中读出的字符串不超过 n-1个字符。在读入的最后一个字符后加上串结束标志‘\0’。读取过程中如果遇到了换行符或EOF(文件结束),则读取结束。
2.???? 写字符串函数fputs
fputs函数的功能是将一个字符串写入指定的文件,其调用形式为:
fputs(字符串,文件指针);
其中字符串可以是字符串常量,也可以是字符数组名,或指针变量,例如:
fputs( abcd ,fp);
其意
您可能关注的文档
- 北师大版高中英语模块二知识点训练与模块测试试卷与答案.doc
- 北大2006年考博士英语真题与答案.doc
- 北师大版一年级数学下册《看一看(二)》(冲突时文件备份2013-03-17 19-55-59).ppt
- 北京邮电大学网络技术研究院移动互联网和物联网、网络服务和智能方向(程渤)博士研究生考试科目.pdf
- 医学影像信息系统(PACS)基本概况与工作原理.doc
- 医学统计学和临床研究统计设计.doc
- 医院感染管理办法释义与适用指南答案(华医网)2012.doc
- 北方黄土高原地区发展林下经济经验和启示_以山西省洪洞县为典型案例.pdf
- 华中科技大学2016年博士《生化和分子生物学》考试大纲.pdf
- 半固态2024合金部分重熔新工艺和组织演变.pdf
最近下载
- PEP五升六英语综合试卷.docx VIP
- 2025内蒙古交通投资(集团)有限责任公司所属天骄航空有限公司招聘25人笔试备考题库及答案解析.docx VIP
- 产品设计材料及工艺PPT完整版全套教学课件.pptx VIP
- 转基因育种技术.ppt VIP
- 2025内蒙古交通投资(集团)有限责任公司所属天骄航空有限公司招聘25人笔试模拟试题及答案解析.docx VIP
- 2023年宁波市江北区事业单位真题及答案.docx VIP
- 地基及基础处理工程监理实施细则(标准范本).pdf VIP
- 2025内蒙古交通投资(集团)有限责任公司所属天骄航空有限公司招聘25人笔试参考题库附答案解析.docx VIP
- 三级养老护理员国家职业技能培训模块一项目二任务四配合医务人员对急救老年人安全转运.pptx VIP
- 2023年宁波市江北区事业单位笔试真题.docx VIP
文档评论(0)