最近一直被一个问题困扰
定义一个结构和一个缓冲区以及一个指针
typedef struct
{
uint8 a1;
uint16 a2;
}TEST;
uint8 buf[10]={0x01,0x02,0x03,0x04};
TEST * temp;
后
uint8 b1;
uint16 b2;
temp = (TEST *) buf;
b1 = temp->a1;
b2 = temp->a2;
结果应该是 b1 = 0x01;b2 = 0x0203
可仿真的结果是 b1 = 0x01;b2 = 0x0003
我的0x02哪去了???请教怎么解决?谢谢诸位大侠 |