第9章 c语言,文件系统

第9章 c语言,文件系统

ID:21866859

大小:491.00 KB

页数:43页

时间:2018-10-20

第9章  c语言,文件系统_第1页
第9章  c语言,文件系统_第2页
第9章  c语言,文件系统_第3页
第9章  c语言,文件系统_第4页
第9章  c语言,文件系统_第5页
资源描述:

《第9章 c语言,文件系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章文件系统1本章学习内容文件的基本知识C语言中文件的使用方法文件的打开/关闭文件的读/写文件指针的定位文件出错的检测文件的操作2本章学习目标掌握文件的基本知识△掌握文件类型指针的使用方法△掌握文件打开/关闭的方法△掌握文件读/写的一般方法△了解文件定位了解文件出错检测方法31.文件的基本知识nextpart基本概念:文件、流文件的分类gogo4基本概念:文件、流return(1)文件(2)流如果文件中的数据是以字节为单位顺序组织的,则把这类文件称为流式文件,简称流。①存储在外部存储介质上的数据集合②操作系统通过文件名(包括

2、路径)对数据进行管理5文件的分类return对于流式文件,按照数据的存储形式分:(1)文本文件:每个字符占一个字节,以ASCⅡ码存储(2)二进制文件:数据按其在内存中的存储形式原样存放到文件中图示说明6return例:int型数10000内存中存储形式0010011100010000在二进制文件中数据的存储形式00100111000100000011000100110000001100000011000000110000在ASCⅡ码文件中数据的存储形式(1)(0)(0)(0)(0)特点:便于对字符操作;存储量大、速度慢特点:存

3、储量小、速度快、便于存放中间结果72.C语言中文件的使用方法nextpartC语言中借助文件类型指针和一组标准库函数来实现对文件的操作。(1)文件类型FILE(2)文件类型指针(3)说明gogogo8(1)文件类型FILEreturn①缓冲文件系统为每个正使用的文件在内存开辟文件信息区②文件信息用系统定义的FILE类型的结构体变量描述③FILE定义在stdio.h中结构体类型FILE的定义9typedefstruct{shortlevel;unsignedflags;charfd;unsignedcharhold;shortb

4、size;unsignedchar*buffer;unsignedchar*curp;unsignedistemp;shorttoken;}FILE;return/*fill/emptylevelofbuffer*//*文件状态标志*//*文件描述符*//*Ungetccharifnobuffer*//*缓冲区大小*//*数据传输缓冲区*//*当前激活指针*//*临时文件指示器*//*用于合法性校合*/10(2)文件类型指针returnc语言中通过定义文件类型指针来操作文件。具体过程如下:①定义文件类型指针FILE*fp;②按

5、指定方式打开文件,使fp和文件建立关联③通过fp对文件进行读写等操作④关闭文件,断开fp和文件的关联文件名文件使用方式文件类型指针C程序操作系统磁盘11(3)说明returnC程序在启动时会自动创建三个文件指针,并使之与标准设备文件建立关联:①文件指针stdin——与标准输入设备(键盘)关联②文件指针stdout——与标准输出设备(显示器)关联③文件指针stderr——与标准输出设备(显示器)关联123.文件的操作nextpart打开/关闭读/写定位错误检测gogogogo13return打开/关闭(1)fopen()(2)f

6、close()函数原型函数原型实例14关闭fp所指向的文件;若有错,返回非0;否则返回0returnFILE*fopen(constchar*filename,constchar*mode);(1)fopen()以参数mode指定的方式打开参数filename指定的文件。若成功,返回一个文件指针,指向该文件;否则,返回NULL(即0)文件打开方式(2)fclose()intfclose(FILE*fp);调用时,实际参数可以是:字符串常量、字符数组名、字符指针15return文件使用方式含义“r”/”rb”(只读)为输入打开一

7、个文本/二进制文件“w”/”wb”(只写)为输出打开或建立一个文本/二进制文件“a”/”ab”(追加)向文本/二进制文件尾追加数据“r+”/”rb+”(读写)为读/写打开一个文本/二进制文件“w+”/”wb+”(读写)为读/写建立一个文本/二进制文件“a+”/”ab+”(读写)为读/写打开或建立一个文本/二进制文件P293:表9-116return#includeintmain(){FILE*fp;…fp=fopen("roll.xls","w");…fclose(fp);return0;}if(fp==NU

8、LL){printf("cannotopenroll.xls");exit(0);}#include17return读/写(1)fgetc()、fputc()(2)fgets()、fputs()(3)fscanf()、fprintf()(4)fread

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

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

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