C语言学习PPT剖析.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言学习PPT剖析

11.1 文件的基本概念;【本章要点】 ;11.1.1 文件的概念 ;11.1.2 文件名称;11.1.2 文件名称;11.1.3 两种重要的文件类型;11.1.3 两种重要的文件类型;11.1.3 两种重要的文件类型;文件缓冲机制:当程序读取文件内容时,系统先将外部文件中的一批批的数据放入一个文件缓冲区内,当文件缓冲区中的数据达到一定数量后,才一次性地将这些数据输入到程序的数据区;反过来,当程序向文件写入数据时,文件缓冲机制也是先将数据写入到文件缓冲区中,当数据写完或缓冲区写满时,才会一次性地将这些数据写入到文件所在的外部设备中。 文件缓冲区:计算机系统为要处理的文件在内存中单独开辟出来的一个存储区间,在读写该文件时,做为数据交换的临时“存储中转站”。 文件缓冲机制的原理见下图。 引入文件缓冲机制的好处就是:能够有效地减少对外部设备(如磁盘、打印机等)的频繁访问,减少内存与外设间的数据交换,添补内、外设备的速度差异,提高数据读写的效率。;文件指针:C语言系统对文件的操作必须通过一个指向“FILE类型”的指针来实现,我们称这种指针为 “文件指针”。 FILE类型:是C语言系统定义的一种标准类型,它实质上是一个结构体。该结构体中定义了一组域,用来保存与文件相关的重要信息。不同的C语言系统对“FILE类型”的描述会略有不同,但基本信息是一致的。 对文件的操作要通过定义一个指向FILE类型的文件指针变量来实现对文件的常规操作。这一指针变量被称为文件指针。 文件指针的定义形式: FILE *文件指针变量名; 例如: FILE *myFile; /*定义了一个名为myFile的文件指针。*/;下面列出Turbo C系统对FILE类型的定义(该定义可从Turbo C的头文件stdio.h中找到):? typedef struct { short level; /* level表明文件缓冲区的状态是满还是空*/ unsigned flags; /* flags为文件状态标志符 */ char fd; /* fd为文件描述符*/ unsigned char hold; /* hold为没有文件缓冲区则不能获得字符 */ short bsize; /* bsize表明文件缓冲区的尺寸*/ unsigned char *buffer; /*指针buffer指向数据交换的缓冲区*/ unsigned char *curp; /*指针curp指向文件的当前活动指针*/ unsigned istemp; /* istemp表明文件是否是临时文件 */ short token; /* token用于文件合法性检查*/ } FILE; 因此,使用文件操作的程序,必须写上:#include “stdio.h”。;C语言规定:每一个文件都必须设置一个位置指针(文件指针)来控制文件的访问位置,其规律如下。 ◆ 文件打开时指针自动指向文件的开始位置; ◆ 每读取一个单元内容文件位置指针自动顺序向后移动一定的偏移量(该偏移量的字节数由所读取单元的数据类型决定); ◆ 读到文件的结尾,则文件的位置指针指向一个特殊的位置——EOF。 ◆ 对文件进行顺序写操作时,数据写入到文件位置指针所指向的位置。写入后文件位置指针自动向后移动到一个新的位置,等待下一次的写入操作。 ◆ 可将文件位置指针移动到任何位置,实现对文件的随机读写访问。; 文件指针移动到文件的最后一个字节时,C语言系统会返回文件的结束标识符EOF。EOF是一个系统常量,其值被定义为-1,是在头文件stdio.h中被定义的。 stdio.h中的定义如下: #define EOF (-1) /* End of file indicator */ 注意:EOF判断文件是否结束只适用于文本文件,而不适用于二进制文件;对于二进制文件,直接使用feof()函数判断文件是否结束,当函数feof()的返回值为1,则表明文件位置指针已经到达文件的结束位置,否则返回值为0,则表明文件还未结束。函数feof()的判断方法对于文本文件也是非常有效。;访问文件主要操作过程如下: ■打开文件(Open File):为文件准备相应的控制信息结构体与文件缓冲区,并在结构体与文件之间、缓冲区与文件之间建立起关联; ■读取文件操作(Read File):将外部存储介质中文件存储的信息读取出来放在计算机内存中; ■写入文件操作

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档