各位C++的大侠们,帮我看看下面定义的union,里面的参数是什么意思,如上图:typedef union{WORD Val;BYTE v[2] __PACKED;struct __PACKED{BYTE LB;BYTE HB;} byte;struct __PACKED{__EXTENSION BYTE b0:1;__EXTENSION BYTE b1:1;__EXTENSION
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/08 11:23:40
各位C++的大侠们,帮我看看下面定义的union,里面的参数是什么意思,如上图:typedef union{WORD Val;BYTE v[2] __PACKED;struct __PACKED{BYTE LB;BYTE HB;} byte;struct __PACKED{__EXTENSION BYTE b0:1;__EXTENSION BYTE b1:1;__EXTENSION
各位C++的大侠们,帮我看看下面定义的union,里面的参数是什么意思,
如上图:
typedef union
{
WORD Val;
BYTE v[2] __PACKED;
struct __PACKED
{
BYTE LB;
BYTE HB;
} byte;
struct __PACKED
{
__EXTENSION BYTE b0:1;
__EXTENSION BYTE b1:1;
__EXTENSION BYTE b2:1;
__EXTENSION BYTE b3:1;
__EXTENSION BYTE b4:1;
__EXTENSION BYTE b5:1;
__EXTENSION BYTE b6:1;
__EXTENSION BYTE b7:1;
__EXTENSION BYTE b8:1;
__EXTENSION BYTE b9:1;
__EXTENSION BYTE b10:1;
__EXTENSION BYTE b11:1;
__EXTENSION BYTE b12:1;
__EXTENSION BYTE b13:1;
__EXTENSION BYTE b14:1;
__EXTENSION BYTE b15:1;
} bits;
} WORD_VAL,WORD_BITS;
各位C++的大侠们,帮我看看下面定义的union,里面的参数是什么意思,如上图:typedef union{WORD Val;BYTE v[2] __PACKED;struct __PACKED{BYTE LB;BYTE HB;} byte;struct __PACKED{__EXTENSION BYTE b0:1;__EXTENSION BYTE b1:1;__EXTENSION
你这个union定义的是个对字操作的对象,根据不同的操作要求,有几种变体啊
typedef union
{
WORD Val; //大部分操作只针对字整体的
BYTE v[2] __PACKED; //操作需要针对字,字节的
struct __PACKED //操作需要很明确的区分高低字节,并且大部分都是字节操作
{
BYTE LB;
BYTE HB;
} byte;
struct __PACKED //所用到的操作大部分是位操作
{
__EXTENSION BYTE b0:1;
__EXTENSION BYTE b1:1;
__EXTENSION BYTE b2:1;
__EXTENSION BYTE b3:1;
__EXTENSION BYTE b4:1;
__EXTENSION BYTE b5:1;
__EXTENSION BYTE b6:1;
__EXTENSION BYTE b7:1;
__EXTENSION BYTE b8:1;
__EXTENSION BYTE b9:1;
__EXTENSION BYTE b10:1;
__EXTENSION BYTE b11:1;
__EXTENSION BYTE b12:1;
__EXTENSION BYTE b13:1;
__EXTENSION BYTE b14:1;
__EXTENSION BYTE b15:1;
} bits;
} WORD_VAL, WORD_BITS;