二. 用一个程序判断大小端我们知道,一般内存的最小地址单位为字节。如下图,一个int型的变量是4个字节,我们用2个十六进制数表示1个字节,int型变量需要用到8个十六进制数表示。
大端(存储)模式:数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中。
小端(存储)模式:数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地址中。
思路: 我们定义一个int型变量a,并且赋值为1。然后取a的地址强制转换成char*类型,让一个char*类型的指针变量pa指向它,这样pa解引用访问的数据就是a第一个字节的数据,也就是低地址的数据,如图的紫色区域的数据。
#includeint main() { int a = 1; char* pa = (char*)&a; if (*pa == 1) { printf("小端n"); } else { printf("大端n"); } return 0; }



