位域
位域
引入
有些信息在储存时,并不需要占用一个完整的字节,而只需占几个或一个二进制位,例如存放一个开关常量,只有0和1两种状态,用一个二进制位即可满足要求,无需浪费空间,并且可以使处理更加简便,所以C语言提供了一种数据结构,成为位域(或位段)。这样就可以把几个不同的对象用一个字节的二进制位域来表示。所谓“位域”就是是把一个字节中的二进位划分为几个不同的区域,并说明每个区域的位数。
案例
struct temp |
特性1
一个位域必须存储在同一个字节中,不能跨两个字节。如果一个字节所剩空间不够存放另一个位域时,应从下一单元起存放该位域。
struct temp |
特性2
可以有意使某位域从下一单元开始。(方法:使用一个空位域在这之前)
struct temp |
特性3
位域可以无位域名,这时它只用来作填充或调整位置。无名的位域是不能使用的。
struct temp |
发布于