如何简化定义——在共用体中定义一个int型变量,和占int变量高8位的变量。
以TC3.0为例,
union
{unsigned int i;
struct
{unsigned :8;
unsigned l:8;
}b;
}a;
定义了两个变量,a.i(占16个字节),a.b.l(是前一个变量的高8位)。
我感觉这样定义很麻烦,我其实只要这两种形式a.i,a.l(去掉那个b)。
我知道可以采用宏的方式实现,但是我想用这种方式实现:
union
{unsigned int i;
{unsigned :8;
unsigned l:8;
}
}a;
可是不行,怎样才能实现呢?望大牛指点!
[解决办法]
用tpyedef先定义好你的结构体就可以啊
[解决办法]
tpyedef struct a
{unsigned :8;
unsigned l:8;
};
[解决办法]