关于网络传输字节顺序的问题: hton? or ntoh?

本文介绍了字节顺序在不同CPU和操作系统上的表现,重点讨论了在网络编程中如何处理字节顺序问题。通过htonl、htons、ntohl和ntohs等API函数,确保在不同字节顺序的机器间正确传输数据。同时提到了判断本机字节顺序的方法以及TCP编程中的工具类UNetwork,用于获取主机信息和调试Socket错误。
摘要由CSDN通过智能技术生成

小知识:字节顺序
很少有人关心字节顺序(Byte Ordering),因为它真的很少用到。何为字节顺序呢?让我们先来看一个例子,假设现在有一个WORD类型的变量,它的值为0x7788,那么它在内存中是怎么存放的呢?
内存中:

低地址 高地址

0x77 0x88

 

高地址 低地址

0x77 0x88


图3.7 两种字节顺序
事实上,对于不同的CPU、不同的操作系统,图3.7中的两种字节顺序都是可能的。如果像图3.7左边那样:高字节在前,低字节在后,则这种字节顺序称作为big-endian;如果像图3.7右边那样:低字节在前,高字节在后,则这种字节顺序称作为little-endian。

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值