文件操作C

文件操作
摘要由CSDN通过智能技术生成

1、什么是文件

        在程序设计中,我们一般谈的文件有两种:程序文件,数据文件(从文件功能的角度来分类的。)

        1·1程序文件

        包括源程序文件(后缀为.c),目标问价(windows环境后缀为.obj),可执行程序(Windows环境后缀为.exe)。

        1·2数据文件

        文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的文件。

        后面我们讨论的是数据文件。

        2、文件的打开和关闭

        2·1文件指针

        在缓冲文件系统中,关键的概念是“文件类型指针”,简称“文件指针”。

        2·1·1文件信息区

        每次打开文件/使用文件,都会在内存中开辟一个相应的文件信息区(是一个结构体),用来存放文件的相关信息(比如文件的名称,字体状态及位置等)。这个结构体是由系统声明的,取名为FILE。存放完信息后,就返回这个结构体的起始地址,用指针来接收。这个指针就叫“文件指针”。

        例如:vs2013编译环境提供的stdio.h头文件中有以下的文件类型申明:

struct _iobuf
{
	char* _ptr;
	int _cnt;
	char* _base;
	int _flag;
	int _file;
	int _charbuf;
	int _bufsiz;
	char* _tmpfname;
};
typedef struct _iobuf FILE;

        不同的编译器的FILE类型包含的内容不完全相同,但是大同小异。

        注意:每当打开一个文件的时候,系统会根据文件的情况自动创建一个FILE结构的变量,并自动填充其中的信息。使用者不用关心细节。

        所以我们一般使用FILE的指针来维护这个FILE结构的变量,这样使用起来更加方便。

         2·1·1创建FILE* 的指针变量

FILE* pf; // 文件指针变量

                pf是一个指向FILE类型数据的指针变量,可以使FILE指向某个文件的文件信息区域。通过该文件信息区中的信息就能够访问该文件。也就是说:通过文件指针变量能够找到与它关联的文件。

        2·2文件的打开和关闭 

        在文件读写之前都应该打开文件,试用结束之后应该关闭文件。

        在编写程序的时候,打开文件的同时,都会返回一个FILE*的指针变量指向该文件,也相当于建立了指针和文件的关系。

        2·2·1 fopen 

        规定使用fopen来打开文件,并返回这个文件(结构体)的地址。

	//打开文件
	FILE* fopen(const char* filename, const char* mode);

        filename:代表文件名。mode:代表打开方式。(r,w,a,r+,w+,a+.....) 

        注意: fopen打开文件可能会打开失败。如果打开成功就返回该文件(结构体)的地址;打开失败就返回空指针。

        2·2·2 fclose

        使用fclose来关闭文件。        

int fclose(FILE* stream);

        注意:关闭文件后,应该把文件指针置空,防止为野指针。

        2·2·3 打开关闭

	FILE* pf = fopen("12.25test.txt", "w");
	if (pf == N
  • 30
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夹心宝贝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值