文件
定义
所谓文件,通常指的是存储在外表介质上的一组相关信息数据的集合。
分类
根据文件的读写方式
- 随机文件 : 对这类文件中的数据读写是随机的,只要按照相关函数对所要读写的文件进行定位,也就是说:允许跳跃式地对所需的文件位置的数据进行处理。
- 顺序文件: 对这类文件中的数据读写是按照顺序进行的,如果要对文件中某个位置的数据进行读写操作,就必须对它前面的数据进行操作,也就是说:不允许跳跃式地对所需的文件位置的数据进行处理。
根据数据存放格式
文本文件:将数据转换为相应的ASCⅡ码。(以5236为例:)
二进制文件:数据的存放按照二进制进行
二者比较
- 文本文件比二进制文件花费更多的转换时间:文本文件的每个字符都要转化成ASCⅡ码
- 文本文件占用内存空间比二进制文本大
- 文本文件便于对单个字符进行处理,便于输出
文件指针
定义
文件指针,指的是一种特殊类型的指针,该指针指向文件。
形式
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;