typedef struct _DMA_DEVICE_INTR
{
byte interrupt0:1;
byte interrupt1:1;
byte interrupt2:1;
byte interrupt3:1;
byte interrupt4:1;
byte interrupt5:1;
byte interrupt6:1;
byte interrupt7:1;
} DMA_DEVICE_INTR;
这就是位域,注意
1、一个位域必须存储在同一个字节中,不能跨两个字节。如一个字节所剩空间不够存放另一位域时,应从下一单元起存放该位域
2、位域可以无位域名,这时它只用来作填充或调整位置。无名的位域是不能使用的。例如:
struct k
{
int a:1
int :2 /*该2位不能使用*/
int b:3
int c:2
};
3、由于位域不允许跨两个字节,因此位域的长度不能大于一个字节的长度,也就是说不能超过8位二进位。