c语言程序设计现代方法.ppt

c语言程序设计现代方法.ppt

ID:48058236

大小:453.00 KB

页数:21页

时间:2020-01-13

c语言程序设计现代方法.ppt_第1页
c语言程序设计现代方法.ppt_第2页
c语言程序设计现代方法.ppt_第3页
c语言程序设计现代方法.ppt_第4页
c语言程序设计现代方法.ppt_第5页
资源描述:

《c语言程序设计现代方法.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第22章文件文件基本概念文件打开与关闭文件读写1C文件概述文件:存储在外部介质上数据的集合,是操作系统数据管理的单位。使用数据文件的目的:1、数据文件的改动不引起程序的改动——程序与数据分离;2、不同程序可以访问同一数据文件中的数据——数据共享;3、能长期保存程序运行的中间数据或结果数据。文件分类按文件的逻辑结构:记录文件:由具有一定结构的记录组成(定长和不定长)流式文件:由一个个字符(字节)数据顺序组成按存储介质:普通文件:存储介质文件(磁盘、磁带等)设备文件:非存储介质(键盘、显示器、打印机等)按数据的组织形式:文本文件:ASCII文件,每

2、个字节存放一个字符的ASCII码二进制文件:数据按其在内存中的存储形式原样存放EOF——文件的结束符:C语言中规定的标准文件有三个:标准输入文件(键盘),文件指针为stdin;标准输出文件(显示屏幕),文件指针为stdout;标准出错输出文件,文件指针为stderr。C语言中的文件为流式文件——一个字节流或二进制流。文件的读写是按顺序进行的,以字符(字节)为单位。这些文件在操作前或后,系统会自动将其打开或关闭,编程时不需管。如:int型数100000010011100010000内存存储形式0010011100010000二进制形式001100

3、0100110000001100000011000000110000ASCII形式文本文件特点:存储量大、速度慢、便于对字符操作二进制文件特点:存储量小、速度快、便于存放中间结果,可节省外存空间和转换时间但不能直接输出字符文件处理方法缓冲文件系统:高级文件系统,系统自动为正在使用的文件开辟内存缓冲区非缓冲文件系统:低级文件系统,由用户在程序中为每个文件设定缓冲区磁盘文件输出文件缓冲区输入文件缓冲区程序数据区a缓冲文件系统:缓冲区指令区程序用户数据区磁盘非缓冲文件系统:2文件类型指针文件结构FILE缓冲文件系统为每个正使用的文件在内存开辟文件信息

4、区文件信息用系统定义的名为FILE的结构描述FILE定义在stdio.h中typedefstruct{int_fd;/*文件号*/int_cleft;/*缓冲区中剩下的字符数*/int_mode;/*文件操作方式*/char*_next;/*文件当前读写位置*/char*_buff;/*文件缓冲区位置*/……}FILE;文件类型指针指针变量说明:FILE*fp;用法:文件打开时,系统自动建立文件结构,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件文件关闭后,它的文件结构被释放文件名文件使用方式文件类型指针C程序操作系统磁盘3文件

5、的打开与关闭一般文件:操作前需打开,操作后需关闭。打开和关闭均是通过库函数进行的。打开文件就是要在内存中建立缓冲区,如打开成功,打开函数返回一个内存地址值,由一个文件指针接收。以后的操作使用这个指针。若内存不可建立缓冲区,则打开失败,打开函数返回NULL。关闭文件很重要,是要将文件送回磁盘,并从内存中清除。及时释放内存空间,并可保证文件安全。文件使用方式:打开文件-->文件读/写-->关闭文件打开文件fopen函数原型:FILE*fopen(char*name,char*mode);功能:按指定方式打开文件返值:正常打开,为指向文件结构的指针;

6、打开失败,为NULL要打开的文件名使用文件方式例FILE*fp;fp=fopen(“c:\py\test.dat”,”r”);例FILE*fp;char*filename=“c:\py\test.dat”fp=fopen(filename,”r”);“r+/rb+”(读写)“a/ab”(追加)“w/wb”(只写)“r/rb”(只读)“w+/wb+”(读写)“a+/ab+”(读写)为输入打开一个文本/二进制文件为输出打开或建立一个文本/二进制文件为读/写打开一个文本/二进制文件为读/写建立一个文本/二进制文件为读/写打开或建立一个文本/二

7、进制文件向文本/二进制文件尾追加数据文件使用方式含义文件关闭fclose函数原型:intfclose(FILE*fp);功能:关闭fp指向的文件,使文件指针变量与文件“脱钩”,释放文件结构占用的内存空间返值:正常关闭为0;出错时,非0文件打开时返回的文件指针磁盘文件输出文件缓冲区输入文件缓冲区程序数据区a缓冲文件系统:fclose不关闭文件可能会丢失数据4文件的读写字符I/O:fputc与fgetcfputc函数原型:intfputc(charc,FILE*fp);功能:把一字节代码c写入fp指向的文件中返值:正常,返回c;出错,返回非0fge

8、tc函数原型:intfgetc(FILE*fp);功能:从fp指向的文件中读取一字节代码返值:正常,返回读到的字符;读到文件尾或出错,为EOF例:从键

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

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

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