关于共用体的一个问题
在谭浩强老师的一书中关于共用体的使用强调了一点,“共用体变量中起作用的成员是最后一次存放的成员,在存入一个新成员后,原有成员就失去作用”但是我看到有些程序这么用
union data
{
unsigned int u16;
unsigned char u8;
}data1;
main()
{
data1.u16=0x1234;
TH0=data1.u8;
TL0=data1.u8;
}
那如果按照谭老师书中的,这种用法就不对了。
但按照共用体的概念,和实践使用中发现,这种用法也是对的,那这不是跟谭老师的书中说的不是矛盾吗? 有哪里不对? 两个成员共用两个字节的存储,上面例子中是对的。谭老师的意思是最后一次赋值有效。
页:
[1]