预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共29页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第9章文件1、流和文件C语言提供了两种类型的流:文本流和二进制流。用一个打开操作使流和一个特定的文件建立联系。一旦一个文件被打开程序就可以与该文件交换信息。2、标准设备文件在一个程序开始执行时三个预定义的文本流stdinstdout和stderr就被打开。它们是与系统相连接的标准输入输出设备。其中:stdin指标准输入设备即键盘;stdout指标准输出设备即终端显示器;stderr是标准出错输出设备一般是终端显示器。9.1文件类型指针文件结构指针是一个FILE型指针变量在头文件stdio.h中已定义如下:typedefstruct{shortlevel;unsignedflags;charfd;unsignedcharhold;shortbsize;unsignedchar*buffer;unsignedchar*curp;unsignedistemp;shorttoken;}FILE;例如定义一个文件型指针变量:FILE*fp;说明:fp就是一个指向FILE类型结构的指针变量通过该文件指针变量就可以找到它相关联的文件从而对文件进行读写操作。9.2文件的打开与关闭1.文件的打开fopen()函数fopen()函数打开一个流并把一个文件与这个流连接fopen()函数的调用方式为:FILE*fp;fp=fopen(filenamemode);其中:filename必须是一个字符串组成的有效文件名;mode是说明文件打开方式的字符串在TurboC中有效的mode值如下表所示;fopen()函数如果成功地打开所指定的文件则返回指向新打开文件的指针且假想的文件位置指针指向文件首部;如果未能打开文件则返回一个空指针。文件操作方式“r+”【例1】打开一个名为test.txt文件并准备写操作。fp=fopen(“test.txt”“w”);if((fp=fopen(“test”“w”))==NULL){puts(“不能打开此文件\n”);exit(1);}说明:在“a”、“ab”、“a+”、“ab+”方式打开一个文件要在文件的尾部再加写些内容则在打开文件时如果该文件存在则文件中原有的内容不会被抹掉文件位置指针指向文件末尾;如果该文件不存在就建立这个文件。2.fclose()函数fclose()函数用来关闭一个已由fopen()函数打开的流fclose()函数的调用形式为:fclose(fp);其中:fp是一个调用fopen()时返回的文件指针。若关闭文件成功则fclose()函数返回值为0;若fclose()函数的返回值不为0则说明出错。。9.3文件的读写操作fgetc()函数的调用形式为:fgetc(fp);功能:fgetc()函数用来从一个已由fopen()函数打开的读操作流中读取一个字符。fgetc()返回文件指针所指文件中当前位置上字符。当读到文件尾时fgetc()返回一个EOF文件结束标记。feof()函数feof()函数的调用形式为:feof(fp);feof()函数将返回一个整型值在到达文件结束点时其值为1未达到文件结束点时其值为0。2.getw()函数和putw()函数getw()函数和putw()函数用于从磁盘文件中读或写一个整型数据(一个字)。4.fread()函数和fwrite()函数调用形式为:fread(buffernum_bytescountfp);fwrite(buffernum_bytescountfp);其中:buffer是一个指针;读写的字节数用num_bytes来表示;参数count指示共有多少个字段要被读写;fp是一个有效的文件指针。5.fprintf()函数和fscanf()函数调用方式为:fprintf(fp“控制字符串”参数表);fscanf(fp“控制字符串”参数表);其中:fp是一个有效的文件指针控制字符