首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++札记3(网摘)整数

2012-10-31 
C++笔记3(网摘)整数unsigned int又可简写为unsigned在计算机内部,所有数据都是以二进制方式存储的。以字节

C++笔记3(网摘)整数
unsigned int又可简写为unsigned
在计算机内部,所有数据都是以二进制方式存储的。以字节为单位,每个字节由
八个位组成,每个位只有0和1两种取值。

对于有符号型整数,负数的表示为其相反数的反码(就是对于每一位,原先是
0的,就改为1;原先是1的,就改为0)然后最低位加1,这样的表示法称
为补码。

对于多字节整数,还存在字节序的问题。对于不与网络数据进行交互的程序来
说,无须考虑这个问题。但如果要与网络数据进行交互,这个问题就非考虑不
可。
网络字节序是固定的,但本机字节序可能与网络字节序相反。所以与网络数据进
行交互时,需要用库函数的htonl、ntohl、htons、ntohs等函数进行转换。

x86的主机都是小端字节序,而网络字节序是大端字节序,所以要转换

因为通信主机的操作系统可能不同,  
所以统一转换为网络字节顺序。  
由操作系统实现hton和ntoh  
分别转换为网络字节顺序和本地字节顺序。  
若该操作系统的网络字节顺序和本地字节顺序相同,  
则操作系统实现hton和ntoh不做任何转换

热点排行