想了解一下定义一个数之后在内存中是怎么排列的,于是写了个程序如下:
#include<stdio.h>
void main()
{
unsigned long a=0x8e361d73;
unsigned long b=0x01020304;
unsigned long c=0x05060708;
printf("a=%lu\n",a);
printf("b=%lu\n",b);
return;
}
打开调试器把各个地址的数打印出来,如图
经过分析,大致就是下面的布局:
可见我的电脑是little-endian排序