目录
day1 文件IO / 标准IO概念
1、系统调用
2、文件流指针的个数问题
每个文件流指针指向的结构体中都包含一个文件描述符,由此可知,它的数量限制的基础是文件描述符有数量限制
3、赋值表达式的值
赋值表达式的值等于 “=”右边的值
4、被open的文件不关闭的问题
5、对于标准IO,文件流指针的数量规则
6、条件判断表达式的问题
条件判断表达式中不能 有 变量定义语句
7、0在整形、字符型、指针的体现
整形:0
字符型:\0
指针:NULL
8、动态顺序表和静态顺序表的区别
动态顺序表是表结构体中包含顺序数组的首地址指针,数组如果不够用,就可以再申请一片更大的内存来存储更多的数据,只要把原来的数据拷贝到新数组中即可,我们的顺序表结构体不用做任何修改;
struct student
{
data_type *pdata;
int size; //数组存储容量
int count; //数组有效数据个数
}
静态顺序表是表结构体中直接包含数据的数组,数组如果不够用,就只能摧毁结构体,再重新建立结构体,这样会导致使用了该结构体的地方都得修改
struct student
{
data_type data[size];
int count;
}
9、define和typedef 的区别
我们在给已有数据类型起别名时,除了可以用typedef之外,也可以用define
比如:#define data_type int
区别主要是体现在类型安全性上
10、赫夫曼树
也可以用来压缩图片:
1、将图片的一个字节根据原始排列顺序转化为字符,此时存储的是大小相同的字符串;
2、然后将字符串编码为赫夫曼编码。从而实现数据的压缩
3、解压时,根据编码规则将赫夫曼编码解码为字符,恢复成大小相同的二进制图片;