C语言学习(2)大端存储和小端存储
/********************************************************************************************************
刚开始学习C语言,仅代表自己的学习理解,不代表观点一定正确
只做学习记录
有错误的麻烦指出,谢谢!
*********************************************************************************************************/
系统存储数据的方式有两种:大端存储(Big-endian)和小端存储(Little-endian)
大端存储:高字节的数据存储在低地址
小端存储:低字节的数据存储在低地址
网络传输的数据统一采用大端存储(htons htonl ntohs nothl)
———————————————————————————————————————
什么是大端/小端存储:
假设现在采用的系统是32位系统,则地址的总线是32位,内存地址是4个字节
如果地址分配为:
0x00000000 0x00000001 0x00000010 0x00000011
则相对应的(大端)数据为
低位 中位 高位 最高位
反之(小端)数据为
最高位 高位 中位 低位
———————————————————————————————————————
例:

输出的结果可能是0x12或者0x78,取决于当前的系统环境(储存数据的方式)
设计一个程序、判断机器是大端存储还是小端存储
