前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >文件的基本知识

文件的基本知识

作者头像
pigeon
发布2022-04-11 19:28:28
8060
发布2022-04-11 19:28:28
举报
文章被收录于专栏:电子荣耀

文件的基本知识

为什么需要外部文件?

·程序运行时数据已存在内存,或从键盘输入,结果输出到显示器。该处理方式是临时性的,程序运行结束数据就丢失。

·除显示器和键盘外,输入输出设备还包括磁盘、光盘、磁带等存储设备,程序运行数据和运行结果可来自和存储于这些设备。

文件的概念

文件的概念

文件:存储在外部介质上(如磁盘等)的数据集合。如,程序文件是程序代码的有序集合;数据文件是一组数据的有序集合。

文件名:一个唯一的文件标识,以便用户识别和引用。文件名由三个部分组成:

(1) 文件路径:文件在外部存储设备中的位置。

(2) 主文件名:用于识别文件,命名规则为标识符规则。

(3) 文件扩展名:用于区分文件的类型,各种类型文件通常有约定的扩展名。

C语言常用两类文件:

程序文件,包括:

源程序文件(扩展名是.c);

目标文件(扩展名是.obj);

可执行文件(扩展名是.exe)

数据文件:程序运行时读写的数据

(如:学生档案、商品交易等)

文件的数据存储

文件的数据存储

根据数据在文件存储的组织形式,数据文件可以分为“文本文件”和“二进制文件”。

数据在内存中是二进制形式存储的,如果不进行转换,直接将内存中数据的二进制形式直接存储到文件中,就是二进制文件。

如果将内存中的数据以ASCII码形式存储到文件中,就是文本文件,也称为ASCII文件。

例:整数12345以ASCII码形式存储到文件中,就是把字符串“12345”存储到文件中,在磁盘上占用5个字节;

以二进制形式存储到文件中,是直接把其内存中的形式存储到文件中,占用4个字节(部分C编译器占用2个字节)。

文件缓冲区

文件缓冲区

概念:系统自动地在内存中为程序中每一个正在使用的文件开辟一个“文件缓冲区”。

目的:协调高速的内存设备与低速的外部存储设备之间的配合,提高文件读写效率。

处理过程:(1) 输出时数据先到文件缓冲区,缓冲区满后再整批送出。(2)读入时,先一次性读取一批数据到文件缓冲区,再逐个输入到数据区变量。

文件类型指针

对文件读写时,需为文件在内存中开辟一个区域,用来存放文件相关信息(如文件名、读写状态等),存储在一个结构体类型变量中,C语言为该结构体类型命名为FILE,定义在stdio.h中:

typedef struct _iobuf

{

char* _ptr;

int _cnt;

char* _base;

int _flag;

int _file;

int _charbuf;

int _bufsiz;

char* _tmpfname;

} FILE;

使用: FILE *fp;

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 电子荣耀 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档