最近写STM32程序,用到了共用体,由此,引发了疑问。
比如:将0x12345678存储到一个U32类型的变量里面。大端和小端分别是这样存储的。
大端存储: 低地址 …… 高地址 0x 12 34 56 78 小端存储: 低地址 …… 高地址 0x 78 56 34 121234567
看代码
`#include “stm32f10x.h”
struct s
{
u32 a;
u8 b;
};
union B
{
u8 c[5];
struct s s_1;
};
union B BB;
int main(void)
{
BB.s_1.a=0x12345678;
BB.s_1.b=0x09;
while(1);
}`
输出结果:
可见,存储形式为小端存储。
日后写代码的时候,一定要注意。
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』