········【字节顺序】是指占内存多于一个字节类型的数据在内存中的存放顺序,通常有小端、大端两种字节顺序。小端字节序指低字节数据存放在内存低地址处,高字节数据存放在内存高地址处;大端字节序是高字节数据存放在低地址处,低字节数据存放在高地址处。
········【大端模式】:是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。
·······【小端模式】:是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。
//判断大小端;
int main()
{
int a = 1;
char* p = (char*)&a;
if (*p == 1)
printf("小端模式\n");
else
printf("大端模式");
return 0;
}
·(八个二进制位是一字节)
·【十进制】1
·【二进制】0000 0000 0000 0000 0000 0000 0000 0001
··————【高字节】—————————————【低字节】
int 是4字节,char类型指针 p 占4字节,指针是指向变量的首位地址的。
因此,可以通过判断*p是否等于1,来确定计算机的大小端模式。