C语言程序设计教程(第二版)

C语言程序设计教程(第二版)

ID:43082844

大小:248.50 KB

页数:20页

时间:2019-09-29

C语言程序设计教程(第二版)_第1页
C语言程序设计教程(第二版)_第2页
C语言程序设计教程(第二版)_第3页
C语言程序设计教程(第二版)_第4页
C语言程序设计教程(第二版)_第5页
资源描述:

《C语言程序设计教程(第二版)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第12章文件C语言文件。文件类型指针。打开、关闭和检测文件文件的输入和输出文件的定位文件:存储在外部介质上的、可由计算机识别的一组相关数据的集合。C程序文件,是一个字符序列。按文件中数据的组织形式(即代码存放形式)可分为两种文件:ASCII文本文件:采用ACSII代码存储方式,每个字符占一个字节,存储其对应的ASCII码.二进制文件:采用C规定的内存数据的存储方式系统将键盘、显示器处理为标准设备文件。C系统对文件的处理采用缓冲文件系统12.1、C语言文件每个被使用的文件都在内存中开辟了一个区,用来存放该文件的信息。文件的信息保存在一

2、个名为FILE的结构体类型的变量中。该结构体类型由系统定义定义文件型指针变量:FILE*指针变量名如:FILE*fp;fp:将指向某个文件的结构体变量C规定了三个标准设备文件指针,无需再定义。stdin:标准输入文件(键盘)stdout:标准输出文件(显示器)stderr:标准错误输出文件(显示器)12.2、文件类型指针1、打开文件(fopen函数)FILE*FP;fp=fopen(文件名,使用文件方式)使用文件的方式详见表12.1fopen函数是一个返回指针值的函数当返回值是NULL时,表示无法打开该文件常采用下列方式打开一个文件

3、:if((fp=fopen(“file1”,”r”)==NULL){printf(”can’topenthisfile”)exit(0);/*关闭文件函数*/}2、关闭(fclose函数)fclose(文件指针)12.3打开、关闭和检测文件3、检测文件功能:检测“文件指针”所指向文件中的位置指针是否处于文件结束位置,如果feof()函数返回值为0,表示文件未结束(即文件的位置指针没有指到文件末尾)。如果返回一个非零值,表示文件结束(即文件的位置指针已经指到文件末尾)。12.3打开、关闭和检测文件(1)检测文件是否结束函数(feo

4、f()函数)feof(文件指针);3、检测文件(2)检测错误函数(ferror()函数)ferror(文件指针);12.3打开、关闭和检测文件功能:检测对文件指针所指向的文件在用各种输入、输出函数进行读写时是否发生了错误,如果ferror()函数返回值为0,表示未出错;如果返回一个非零值,表示出错。在执行fopen()函数时,ferror()函数的初始值自动置为0。3、检测文件(3)清除错误标志和文件结束标志函数(clearerr()函数)clearerr(文件指针);12.3打开、关闭和检测文件功能:用于清除文件指针所指向的文件的

5、出错标志和文件结束标志,使它们的值为0。假设在调用一个输入函数时出现错误,这时ferror()函数值为一个非零值,在调用clearerr()函数后,ferror()函数值变为0值。12.4.1、fputc,fgetc函数(1)fputc函数:把一个字符写到文件中fputc(ch,fp)ch:为待输出的字符fputc函数的返回值:当输出成功时为ch的值当输出不成功时为EOF即-1。(2)fget函数:从指定文件中读入一个字符ch=fgetc(fp);12.4、文件的输入和输出如:顺序读入磁盘文件中的字符并输出对于文本文件:ch=fge

6、tc(fp);while(ch!=EOF){putchar(ch);ch=fgetc(fp);}对于二进制文件:while(!feof()){ch=fgetc(fp);putchar(ch);}例如12.1编写程序,从键盘输入一个以“$”结尾的字符串,并将它们原样存到名为file1.txt文件中。#include"stdio.h"main(){FILE*fout;/*定义文件指针*/charch;if((fout=fopen(“file1.txt”,"w"))==NULL)/*为写打开文件*/{printf("cannotopenf

7、ile");exit(0);}ch=getchar();while(ch!=’$’){fputc(ch,fout);/*将字符变量ch的值输出到文件中*/putchar(ch);/*将字符变量ch的值输出到屏幕*/ch=getchar();}fclose(fout);/*关闭文件*/}例如12.2编写程序读入【例12.1】生成的文本文件file1.txt,并将文件内容原样输出到显示屏上。#include"stdio.h"main(){FILE*fin;/*定义文件指针*/charch;if((fin=fopen(“file1.t

8、xt”,"r"))==NULL)/*为读打开文件*/{printf("cannotopeninfile");exit(0);}while(!feof(fin))/*当没有到文件末尾时执行循环*/{ch=fgetc(fin);/*从

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

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

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