结构体
平时我们编程的时候结构体的使用是非常多的,今天就介绍一种结构体的高端且特别实用的用法,按位存储。
一般结构体:
struct xxx
{
成员 1 类型 成员 1 ;
成员 2 类型 成员 2 ;
成员 3 类型 成员 3 ;
};
我们知道结构体是会以对其的方式来存储的,那么这三个成员所占的存储空间就以最大类型空间乘3来计算,这样的话有时就会很浪费地址空间,如果三个成员类型都一致的情况下,并且这三个成员我们并不全用他们的所有位数就可以表示其真实数值(意思就是一个8位char型变量我们只用到8位中的几位并不全用,后面有例子详解,这里有点抽象不易理解,往后看即可),这时我们可以换一种写法就能够节省到不少的地址空间。
按位存储结构体:
struct xxx
{
成员 1 类型 成员 1 : 成员 1 位数