新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt

新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt

ID:50140691

大小:629.00 KB

页数:41页

时间:2020-03-09

新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt_第1页
新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt_第2页
新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt_第3页
新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt_第4页
新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt_第5页
资源描述:

《新编C程序设计教程 教学课件 作者 赵忠孝 第10章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章文件在程序运行时,程序本身和数据一般都存放在内存中。当程序运行结束后,存放在内存中的数据被释放。如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就必须以文件形式存储到外部存储介质上。文件(file)是存储在外部介质上的数据集合,是在逻辑上具有完整意义的一组相关信息的序列。10.1文件的分类10.2文件的打开与关闭10.3文件的读写10.4文件的随机读写10.5文件检测函数10.1文件的分类根据用户的不同需求,文件分为不同的类型,按不同的格式存储在磁盘上。从不同的角度可对文件作不同的分类:1.普通文件和设备文件普通文件是指

2、驻留在磁盘或其它外部介质上的文件。可以是程序的源文件、目标文件、可执行程序;也可以是一组待输入的原始数据,或者是一组程序处理后输出的结果。设备文件是指与主机相连的各种外部设备,如显示器、键盘、打印机等。在操作系统中,把外部设备也看作是一个文件来进行管理。把对这些设备的输入、输出操作等同于对磁盘文件的读和写操作。通常把显示器定义为标准输出文件,一般情况下在屏幕上显示有关信息就是向标准输出文件输出。键盘通常被定义为标准的输入文件,从键盘上输入就意味着从标准输入文件上输入数据。2.ASCII码文件和二进制码文件ASCII文件也称为文本(text)文

3、件,它的每一个字节可存储一个字符的ASCII码。将整数1234以ASCII码方式存储到文件中,其的存储形式为:ASCII码:00110001001100100011001100110100十进制码:1234共占用4个字节,与该数据在内存的存储形式是不同的。二进制文件是按二进制的编码方式来存放数据的。如要将整数1234以二进制形式存储到文件中,其存储形式为:0000010011010010只占二个字节,与该数据在内存的存储形式是相同的。显然,ASCII码文件占用的存储字节数较多,输入和输出时要在内存的二进制和ASCII之间进行转换。二进制文件占

4、用的存储字节数少,数据在文件的格式和内存的格式相同,从文件输入和输出时不需要进行转换,运行速度较快。3.流式文件和记录式文件记录文件是由若干条逻辑记录组成的文件,每条逻辑纪录又由相同的数据项组成。流式文件中的数据是一串字符,数据之间并没有结构,把文件看作是字符流或二进制流。C系统在处理文件时,并不区分类型,都是按一个字节一个字节处理的,把数据也看作是一串字符,而不考虑记录的界限。其输入和输出的开始和结束仅受程序的控制,而不受文件中物理符号的控制,如回车符等。而在其它高级语言中,组成文件的基本单位是记录,对文件操作的基本单位也是记录。磁盘10.

5、2.1文件缓冲区所谓缓冲文件系统是指,系统自动地在内存区为每个正在使用的文件开辟一个缓冲区(buffer)。从内存向磁盘输出数据时,必须首先输出到缓冲区中。待缓冲区装满后,再一起输出到磁盘文件中。从磁盘文件向内存读入数据时,则正好相反:首先将一批数据读入到缓冲区中,再从缓冲区中将数据逐个送到程序数据区。程序数据区输出文件缓冲区输入文件缓冲区10.2文件的打开与关闭10.2文件指针文件指针是用一个指针变量指向一个文件,这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。定义说明文件指针的一般形式为:FILE*指针变量标识符;其中F

6、ILE应为大写,它实际上是由系统定义的一个结构体。typedefstruct{shortlevel;/*缓冲区“满”或“空”程度*/unsignedflags;/*文件状态标志*/charfd;/*文件描述符*/unsignedcharhold;/*若无缓冲区,不读取字符*/shortbsize;/*缓冲区大小*/unsignedchar*buffer;/*数据传输缓冲区地址*/unsignedchar*curp;/*当前活动的指针*/unsignedistemp;/*临时文件的指标器*/shorttoken;/*有效性检查*/}FILE;该

7、结构中含有文件名、文件状态和文件当前位置等信息。在编写源程序时不必关心FILE结构的细节。例如:FILE*fp;表示fp是指向FILE结构的指针变量,通过fp即可找存放某个文件信息的结构变量,然后按结构变量提供的信息找到该文件,实施对文件的操作。习惯上也笼统地把fp称为指向一个文件的指针。在C语言的stdio.h文件中还定义了一些设备文件的指针,见表10-1。标准设备名称对应的文件指针名标准输入设备(键盘)stdin标准输出设备(显示器)stdout标准错误输出设备(显示器)stderr打印机输出设备stdprn10.2.3文件的打开(fop

8、en()函数)对文件进行操作之前,必须先打开该文件;使用结束后,应立即关闭,以免数据丢失。C语言规定了标准输入输出函数库,用fopen()函数打开一个文件。函数原型

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

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

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