文件的基本知识

文章目录


前言

文件的说明和使用、文件的打开和关闭、文本文件和二进制文件、文件读取结束的判定

一、文件的说明和使用?

文件分为程序文件数据文件

1.程序文件:分为源程序文件(.c)、目标文件(.obj)、可执行程序(.exe)

2.数据文件:不一定是文件的内容,而是程序在运行时所读写的数据,从中读写的文件或输出内容的文件,简而言之就是程序运行时从文件中读写数据

那为什么要使用文件呢?

那是因为数据的持久化,就相当于记笔记一样,你把笔记写在一个笔记本里面,为以后复习做准备,免得这一堆,那一堆,显得麻烦

二、文件的打开和关闭

在介绍打开和关闭之前,我们有必要了解一下文件指针

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

看到这里是不是感觉到没看懂,别急听我解释

文件在使用时会开辟一个相应的空间,用来存放相关的信息数据(文件的名字、位置等),这些信息是放在一个结构体变量中,结构体类型由系统来声名的,叫做FILE

eg:在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* PF;//文件指针变量

这里的PF就是一个指向FILE类型数据的指针变量,通过PF来访问FILE里面的相关文件

1.文件的打开

在ANSIC规定中用fopen函数来打开文件

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

2.文件的关闭

fcolse函数来关闭文件

//关闭文件
int fclose(FILE* STREAM);

三.文本文件和二进制文件

  • 文本文件根据数据组织形式形成的文件

  • 二进制文件:数据内存以二进制式储存,不加转化输出外存

特别说明外存以ASCll码的形式储存,需要储存转化,为文本文件

eg:整数10000,以ASCII和二进制形式在内存中分别占5和4个字节如下图

 四.文件读取结束的判定

feof是应用于文件读取结束的时候,判断是读取失败结束,还是遇到文件尾结束,而不是用feof返回值来判断文件是否结束

1.文本文件判断结束

fegtc判断是否为EOF

fegts判断是否为NULL

2.二进制文件的读取结束判断,判断返回值是否小于实际要读的个数

fread判断返回值是否小于实际要读的个数

总结

介绍了文件的相关知识信息,对文件有了一定的了解。如果在阅读过程中,发现错误,请及时联系我予以纠正

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值