本文主要是介绍Big Endian 与 Little Endian,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Little Endian: 高地址-》高字节, 低地址-》低字节(主机字节序)
Big Endian: 低地址-》高字节, 高地址-》低字节(网络字节序)
一: c语言查看变量的内存布局:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a = 16;
int iSize = sizeof(a);
char *p = &a;
int i;
for (i = 0; i < iSize; ++i)
{
if ((*p) <= 0xf)
{
printf("0");
}
printf("%x", *p);
p++;
}
printf("\n"); //结果为10000000
return 0;
}
二: PHP
php -r 'echo bin2hex(pack('l',16));' //10000000
其中pack第一个参数:l为 signed long(always 32 bit, machine byte order)
这篇关于Big Endian 与 Little Endian的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!