目录
一、什么是文件
根据功能分类,文件分为程序文件和数据文件。
程序文件:
在写c语言程序时,运行前后产生文件的就是程序文件如.c为后缀的源程序文件,.obj为后缀的目标文件,.exe为后缀的,为可执行程序。
数据文件:
文件内容并不一定是程序,而是存放一些数据,这些数据可以被程序读和写。
根据数据的组织形式,数据文件包括文本文件或者二进制文件。
二、文件的打开和关闭
2.1.文件指针
我们对文件进行一系列的操作——打开文件、关闭文件、向文件中写入数据、从文件中读出数据。所有的操作都离不开文件指针。
_文件指针: FILE* _
FILE:每个被使用的文件都在内存中开辟了一个相应的文件信息区,用来存放文件的相关信息(文件的名字,文件状态及文件当前的位置等)。这些信息是保存在一个结构体变量中,取名FILE。
FILE* :通过一个FILE的指针来维护这个FILE结构的变量,对文件进行操作。
FILE* pf;//文件指针变量
pf是一个指向FILE类型数据的指针变量。即通过文件指针变量能够找到与它关联的文件。
2.2.文件的打开与关闭
2.2.1 fopen函数
在C语言中,操作文件之前应该先打开文件。使用 <stdio.h> 头文件中的 fopen() 函数可以打开文件。
用法如下:
FILE * fopen ( const char * filename, const char * mode );
第一个参数filename为文件名(包括文件路径),第二个参数mode为打开方式。若打开成功,fopen返回一个结构指针地址,否则返回NULL。
如果没有指定文件路径,则默认为当前工作目录。
//首先定义文件指针:fp
FILE *fp;
//用fopen()函数卡开文件, r——>以只读方式打开
fp = fopen("test.txt", "r"); //没有指定文件路径,则默认为当前工作目录。
2.2.2 fclose函数
在执行完文件的操作后,要用 fclose() 函数进行“关闭文件”操作。以此释放相关资源,避免数据丢失。同时也可提高系统整体的执行效率。
fclose() 的用法为:
int fclose(FILE *fp);
//fp 为文件指针,关闭文件代码如下:
fclose(fp);
关闭成功返回值0,否则返回非零值。
三、文件的顺序读写
打开文件后要对文件进行具体的操作,以下为文件的读写函数:
功能 | 函数名 |
---|---|
字符输入函数 |