高级语言程序设计 课件 郑岩 第9、10章 编译预处理、文件.ppt

高级语言程序设计 课件 郑岩 第9、10章 编译预处理、文件.ppt

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

文件分类按文件的逻辑结构划分记录文件:由具有一定结构的记录组成(定长和不定长)。流式文件:由一个个字符(字节)数据顺序组成。按文件的存储介质划分普通文件:存储介质(磁盘、磁带等)文件。设备文件:非存储介质(键盘、显示器、打印机等)文件。按文件的组织形式划分顺序存取文件和随机存取文件。按文件的内容划分程序文件和数据文件,其中程序文件又可分为源文件、目标文件和可执行文件。10.1文件概述文件分类按文件的存储形式划分ASCII文件(文本文件):每一字节存储一个字符,便于对字符逐个处理。但一般占用存储空间较多,而且要花费转换时间(二进制与ASCII码之间的转换)。二进制文件:数据按其在内存中的存储形式原样存放。二进制文件是把内存中的数据,原样输出到磁盘文件中。可以节省存储空间和转换时间,但一个字节并不对应一个字符,不能直接输出字符形式。文件存取方式顺序存取:自上而下逐一地存取文件的内容。保存数据时,将数据附加到文件的尾部,常用于文本文件。随机存取:以一个完整的单位进行数据读写,常用于二进制文件。10.1文件概述1、文件例inta=10000;0010011100010000内存存储形式0010011100010000二进制形式0011000100110000001100000011000000110000ASCII码形式文本文件特点:存储量大,转换为二进制速度慢,直观易记。二进制文件特点:存储量小,无需转换。但因1个字节不对应1个字符,故不能直接输出其字符形式。文件系统缓冲文件系统(标准I/O):系统自动为正在使用的文件开辟内存缓冲区。非缓冲文件系统(系统I/O):由用户在程序中为每个文件设定缓冲区。磁盘文件输出文件缓冲区输入文件缓冲区程序数据区a缓冲文件系统缓冲区指令区程序用户数据区非缓冲文件系统注意:缓冲文件系统操作简单,所以ANSIC仅采用缓冲文件系统处理文件。定义格式FILE*文件型指针名1,*文件型指针名2,…;结构体FILE缓冲文件系统为每个正使用的文件在内存开辟文件信息区。文件信息用系统定义的名为FILE的结构体描述。FILE定义在stdio.h中。typedefstruct/*文件类型声明*/{shortlevel;/*缓冲区满/空程度*/unsignedflags;/*文件状态标志*/charfd;/*文件描述符*/unsignedcharhold;/*检查缓冲区状态,若无缓冲区不读取字符*/shortbsize;/*缓冲区大小*/unsignedchar*buffer;/*数据传送缓冲区位置*/unsignedchar*curp;/*当前读写位置*/unsignedistemp;/*临时文件指示*/shorttoken;/*用作有效检测*/}FILE;/*结构体类型名FILE*/10.1文件概述2、文件型指针用法文件打开时,系统自动建立文件类型,并返回指向它的指针,程序通过该指针获得文件信息,以访问文件。文件关闭时,文件类型被释放。文件名文件使用方式文件类型指针C程序操作系统磁盘注意:结构体类型名FILE必须大写。10.1文件概述2、文件型指针对文件进行操作之前,必须先打开该文件;使用结束后,应立即关闭,以免数据丢失。C语言规定了标准输入/输出函数库,用fopen()函数打开一个文件,用fclose()函数关闭一个文件。为增强程序的可靠性,打开一个文件的常用方法:if((fp=fopen(文件名,操作方式))==NULL){printf(cannotopenthisfile\n);exit(0);}

10.2文件的打开和关闭函数文件打开函数fopen()函数首部FILE*fopen(char*filename,char*mode

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档