大小端和字节序

1. middle-endian/mixed-endian

https://en.wikipedia.org/wiki/Endianness#Middle-endian

 

2. When is htonl(x) != ntohl(x) ?

https://stackoverflow.com/questions/11617684/when-is-htonlx-ntohlx-or-when-is-converting-to-and-from-network-byte-o

So, a crazy machine may have a 8 bits right rotated from network byte order as its host byte order. On such a machine, htonl and ntohl would not be the same. htonl would have to rotate left by 8 bits, and ntohl would have to rotate right by 8 bits. – jxh May 22 '15 at 3:08

 

3. 用一个语句判断大小端

1 int isLittleEndian(void)
2 { 3 return *(char *)(int []){1} == 1; 4 }

关于Compound Literals,https://gcc.gnu.org/onlinedocs/gcc-3.3.1/gcc/Compound-Literals.html

转载于:https://www.cnblogs.com/albumcover/p/7121917.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值