第十三章 文件 V2.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十三章 文件 V2

文 件 文件(file):是记录在介质上的数据的集合,以文件名作为访问文件的标识。 介质:一般是磁盘、磁带、光盘等。 内存文件:在内存中开辟一段空间,以文件的方式存放数据。 操作系统把与主机关联的终端也当作文件处理。 键盘: 输入文件 显示器:输出文件 打印机:输出文件 C语言把文件看作一个字节序列,即由一连串的字节组成,称为“流(stream)”。 以字节为单位访问,没有记录的界限(实际存在界限,例如,在FAT16文件系统中,文件的最大长度是2GB)。 按文件所依附的介质来分:有磁盘文件、磁带文件、内存文件、设备文件等。 按文件的内容区分:有源程序文件、目标文件、数据文件等。 按文件中的数据组织形式来分:数据文件可分为ASCII码文件和二进制文件。 ASCII码文件,又称为文本文件(text),其每一个字节存放一个ASCII码。 二进制文件,把内存中的数据按其在内存中的存储形式存放在磁盘上。 要存放十进制整数10000 在内存中占两字节,其存放形式是:0010,0111,0001,0000 在二进制文件中也按这种方式存放。 在ASCII文件中,存放为31H、30H、30H、30H、30H,占五个字节,它们分别是1、0、0、0、0、0字母的ASCII码。 按照操作系统对磁盘文件的读写方式,文件可以分为“缓冲文件系统”和“非缓冲文件系统”。 缓冲文件系统:操作系统在内存中为每一个正在使用的文件开辟一个读写缓冲区。数据要先放到缓冲区,装满后一起送出去。 非缓冲文件系统:操作系统不开辟读写缓冲区。 要调用一个文件,需要有以下的信息: 文件当前的读写位置 与该文件对应的内存缓冲区的地址 缓冲区中未被处理的字符串 文件操作方式 。。。。。。 缓冲文件系统会为每一个被使用的文件开辟一个“文件信息区”,用来存放文件的有关信息。 这些信息是保存在一个结构体变量中的。 在stdio.h中,这个变量被定义为FILE类型数据。 typedef struct {short level;   /*缓冲区“满”或“空”的程度*/ unsigned flags; /*文件状态标志*/ char fd;    /*文件描述符*/ unsigned char hold;/*如无缓冲区不读取字符*/ short bsize;  /*缓冲区大小*/ unsigned char *buffer; /*数据缓冲区位置*/ unsigned ar *curp; /*指针当前的指向*/ unsigned istemp; /*临时文件指示器*/ short token; /*用于有效性检查*/ }FILE; 定义文件指针变量的一般形式为: FILE *文件结构指针变量名 FILE *fp; fp是一个指向FILE类型(文件类型)的指针变量。可以指向某一个文件的结构体变量,通过该结构体变量中的文件信息能够访问该文件。通过指针变量能够找到与它相关的文件。 注意: FILE *fp; FILE要大写,不能写成file。 原因:在stdio.h文件中对文件类型变量的定义中已经定义过的格式。 typedef struct {short level;   /*缓冲区“满”或“空”的程度*/ unsigned flags; /*文件状态标志*/ char fd;    /*文件描述符*/ unsigned char hold;/*如无缓冲区不读取字符*/ short bsize;  /*缓冲区大小*/ unsigned char *buffer; /*数据缓冲区位置*/ unsigned ar *curp; /*指针当前的指向*/ unsigned istemp; /*临时文件指示器*/ short token; /*用于有效性检查*/ }FILE; 文件的打开与关闭 fopen函数 FILE *fp; fp=fopen(文件名,使用文件方式) fp=fopen(a1,r); 打开名字叫a1的文件,使用方式为“读入”。fopen函数将指向a1的指针给fp。fp就与a1有了联系。 fclose函数 fclose(fp);

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档