关于文件和文件指针的总结

文件

定义

所谓文件,通常指的是存储在外表介质上的一组相关信息数据的集合。

分类

根据文件的读写方式

  1. 随机文件 : 对这类文件中的数据读写是随机的,只要按照相关函数对所要读写的文件进行定位,也就是说:允许跳跃式地对所需的文件位置的数据进行处理。
  2. 顺序文件: 对这类文件中的数据读写是按照顺序进行的,如果要对文件中某个位置的数据进行读写操作,就必须对它前面的数据进行操作,也就是说:不允许跳跃式地对所需的文件位置的数据进行处理。

根据数据存放格式

文本文件:将数据转换为相应的ASCⅡ码。(以5236为例:)

在这里插入图片描述

二进制文件:数据的存放按照二进制进行

在这里插入图片描述

二者比较
  1. 文本文件比二进制文件花费更多的转换时间:文本文件的每个字符都要转化成ASCⅡ码
  2. 文本文件占用内存空间比二进制文本大
  3. 文本文件便于对单个字符进行处理,便于输出

文件指针

定义

文件指针,指的是一种特殊类型的指针,该指针指向文件。

形式

FILE *file_pointer

FILE结构体类型

struct _iobuf
{
	char *_ptr;// _ptr 字符指针表示文件输入的下一个位置
	int _cnt;	// cnt 表示当前缓冲区的相对位置
	char *_base;// _base 字符指针表示文件的起始位置
	int _flag;	// _flag 表示文件标志
	int _file;//  _file 表示文件的有效性验证
	int _charbuf;// _charbuf  表示缓冲区的检查,若无此成员则不读取
	int _bufsize; //  _bufsize 表示文件大小
	char *_tmpfname;  // _tmpfnam 临时文件名
};
typedef struct _iobuf FILE;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值