c语言程序设计与应用开发第11章

c语言程序设计与应用开发第11章

ID:39963355

大小:228.50 KB

页数:26页

时间:2019-07-16

c语言程序设计与应用开发第11章_第1页
c语言程序设计与应用开发第11章_第2页
c语言程序设计与应用开发第11章_第3页
c语言程序设计与应用开发第11章_第4页
c语言程序设计与应用开发第11章_第5页
资源描述:

《c语言程序设计与应用开发第11章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第11章文件本章要点掌握文件的基本概念掌握文件类型指针理解文件操作的基本方法掌握文件处理函数本章难点对文件进行不同操作的函数的功能及其用法11.1C文件概述一、文件的概念文件:是指存储在外部介质上数据的集合。操作系统是以文件为单位对数据进行管理的。每一个与主机相连的输入或输出设备都看作是一个文件。二、文件的存在形式及分类文件的存在形式:文件名+文件内容。文件内容:是一个字符(字节)序列,即由一个个字符(字节)的数据顺序组成。对文件的存取是以字符(字节)为单位的,这类文件称为流式文件。文件的分类:⑴ASCII码文件(文本文件):文件的每一个字节放一个ASCII代

2、码,代表一个字符。⑵二进制文件:把内存中的数据按其在内存中的存储形式原样输出到文件上。根据数据在内存的组织形式不同可分为两类文件∶ASCII码文件(文本文件)二进制文件根据数据读写方式不同可分为两类文件∶顺序存取文件随机存取文件三、文件的基本操作打开文件∶把文件名等目录信息从磁盘上读入内存并存入结构体。⑵关闭文件∶把内存结构体中的文件名等目录信息写入磁盘。(3)写文件∶向文件写内容。(4)读文件∶从文件读内容。四、文件的输入输出方式C语言对文件进行处理分为:非缓冲文件系统缓冲文件系统⑴非缓冲文件系统∶程序与外设直接进行数据交换。特点∶每读写一次都要启动外设。⑵

3、缓冲文件系统∶程序与外设通过内存缓冲区进行数据交换。(常用的方式)特点∶只有内存缓冲区满(写盘)或空(读盘)才启动外设。程序数据区输出文件缓冲区输入文件缓冲区磁盘11.2C文件类型指针一、文件类型(FILE)每个被使用的文件都在内存中开辟一个区,用来存放文件的有关信息(如文件名,状态,当前位置等)。这些信息保存在一个结构体类型的变量中。结构体类型由系统定义为“FILE”。有的C版本在stdio.h文件中有如下定义:typedefstruct{int_fd;;/*文件号*/int_cleft;/*缓冲区中剩下的字符*/int_mode;/*文件操作模式*/cha

4、r*_nexttc;/*下一个字符位置*/char*_buff;/*文件缓冲区位置*/}FILE;二、定义FILE类型指针变量FILE类型的指针变量定义方法∶FILE*指针变量名;例如:FILE*fp;含义:fp是一个指向FILE类型结构体的指针变量。可以使fp指向某个文件的结构体变量,从而通过该结构体变量中的文件信息能够访问该文件。11.3文件的基本操作一、文件的打开函数(fopen函数)(1)调用方式:FILE*fp;fp=fopen(文件名,文件的使用方式);所要打开的文件名。必须是用双引号引起的字符串常量。具有特定含意的符号也必须由双引号引起用户定义的

5、文件类型指针变量⑵功能:以指定的方式打开指定的文件,若操作成功,则返回一个指向该文件的指针,若打开文件时出现错误,则返回空指针NULL。例∶FILE*fp;fp=fopen("stu.dat","r");⑶文件使用方式基本方式字符(单独使用是对文本文件):r仅为读而打开。(只读文件)w仅为写而打开。(建立新文件)a仅为添加而打开。(写旧文件)按二进制格式读写文件(基本方式字符+“b”)∶b辅助说明,按二进制格式读写文件。同时进行读写文件(基本方式字符+[“b”]+“+”)∶+辅助说明,可同时进行读和写文件。例如:fp=(“stu.dat”,“rb”);例如:f

6、p=(“stu.dat”,“r+”);例:#includemain(){FILE*fp;if((fp=fopen("stu.dat","r"))==NULL){printf("filenotfound.");exit(0);}else{printf("fileopenedok!");fclose(fp);}}程序运行结果:如果磁盘上存在文件stu.dat,屏幕上会显示fileopenok!,否则屏幕上显示filenotfound.。常使用此方法打开一个文件exit函数的功能是关闭所有文件,终止程序运行。exit(0)为正常终止程序二、文件的关

7、闭函数(fclose函数)(1)调用方式:fclose(文件指针);⑵功能:关闭由文件指针指定的文件,把缓冲区中的数据(未装满缓冲区的数据)输出到磁盘上,释放文件指针。例如:FILE*fp;fp=fopen(“output.dat”,“r+”);……/*进行读写操作*/fclose(fp);注意:fopen函数和fclose函数总是成对出现的。无fclose函数时会导致部分数据丢失!11.4文件的读写函数一、fputc函数和fgetc函数这两个函数是以字符为单位进行文件读写的函数。1.fputc函数一般调用形式:fputc(字符常量或变量,文件指针);功能:把

8、指定字符存入文件指针所指的文件中。如果

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。