c语言 文件类型指针,文件概念与文件类型指针.ppt
您所在位置:网站首页 > 海量文档
 > 办公文档 > 事务文书
文件概念与文件类型指针.ppt34页
本文档一共被下载:次,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
第八章 文件 8.1 文件概念与文件类型指针 8.2 C语言中文件的打开与关闭 8.3 C语言中的文件读写 8.4 C语言中文件的定位和随机读写 8.5 C语言中文件操作错误检测 8.1 文件概念与文件类型指针 文件:存储在外部介质上数据的集合,是操作系统数据管理的单位。 文件分类: 按文件的读写方式分类 : 顺序文件 。 随机文件 。 按存储介质: 磁盘文件:存储介质文件(磁盘、磁带等)。 设备文件:非存储介质(键盘、显示器、打印机等)。 按文件的结构形式分类 : ASCII文件 文本文件 :每个字节存放ASCII码,表示一个字符。 二进制文件:数据按其在内存中的存储形式原样存放。 文件类型指针: 文件类型结构体FILE 缓冲文件系统为每个正使用的文件在内存开辟文件信息区。 文件信息用系统定义的名为FILE的结构体描述。 FILE定义在stdio.h中。 文件指针定义形式 FILE *文件结构指针名;File * fp; 用法: 文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件。 文件关闭后,它的文件结构体被释放。 8.2 C语言中文件的打开与关闭 系统自动打开和关闭的五个标准设备文件: 文件关闭 函数:int fclose FILE *fp 功能:关闭fp指向的文件,释放文件结构体和文件指针。 返值:正常为0;出错为非0。 8.3 C语言中的文件读写 字符输出fputc 函数原型:int fputc int ch, FILE *fp 功能:把一字符ch写入fp指向的文件中。 返值:正常,返回ch;出错,为EOF。 字符输入fgetc 函数原型:int fgetc FILE *fp 功能:从fp指向的文件中读取一个字符。 返值:正常,返回读取的字符;读到文件尾或出错时,为EOF。 例8-1 读入文件ex8-1.cpp并在屏幕上显示出来。 算法描述: 定义文件指针fp。 以读文本文件方式打开文件“ex8-1.cpp”, 并使fp指向该文件。如打开文件出错, 给出提示并退出程序。 从文件中读入一个字符 While(读取的字符! 文件结束标志) 将读取的字符显示在屏幕上 从文件中读入下一字符。 关闭文件。 根据分析写出程序代码如下: #include #include void main FILE *fp; char ch; if fp fopen “ex8-1.cpp”,”r” NULL printf “Cna’t open file ex8-1.cpp!\n” ; exit 0 ; ch fgetc fp ;/*从文件中读取一个字符*/ while ch! EOF /*判断是否为文件结尾*/ putchar ch ; /*使用putchar 函数在屏幕上显示字符*/ ch fgetc fp ; /*继续从文件中读取一个字符*/ fclose fp ; /*使用fclose 函数关闭文件*/ 例8-2将从键盘上输入的字符存入文本文件mydata,当遇到输入字符为’#’时输入流结束,然后将该文件内容读出显示在屏幕上。 算法思想: (1)定义FILE类型指针fp。 (2)按”w”方式打开文件mydata,fp与mydata文件建立联系,如果打开文件出错,提示错误信息,退出程序运行。 (3)用do while循环处理键入字符,将字符写入文件mydata,直到遇到符号‘#’为止。 (4)关闭文件, (5)以只读的方式打开文件。 (6)用while循环处理读出字符并判断是不是文件结束标志 每个文件末有一结束标志EOF ,如果不是文件结束标志就把该字符显示在屏幕上,再读入下一字符。 (7)关闭文件。 #include #include void main FILE *fp; char ch; if fp fopen “mydata”,”w” NULL printf “Can’t create file mydata!\n” ; exit 0 ; printf “input a string:\n” ; do ch getchar ;/*从键盘输入一个字符*/ fputc ch,fp ; /*将字符写入文件test.txt*/ while ch! EOF ; /*判断键盘输入是否结束*/ fclose fp ;/*关闭文
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名:
验证码:
匿名?
发表评论
还没有评论,来说两句吧...