首页 > 其他 > 详细

主机跨网通信时的字节序转换

时间:2015-05-26 13:59:19      阅读:249      评论:0      收藏:0      [点我收藏+]

字节序分为 little-endian 和 big-endian,不同主机通信字节序转换过程:

主机字节序 -> 网络字节序 ->主机字节序

判断网络字节序:

  1. #include<arpa/inet.h>
  2. int isBigEndian()
  3. {
  4. int flag = 0;
  5. short a = htons(0x0102);
  6. char* p = &a;
  7. if(*p==0x01)
  8. {
  9. flag = 1;
  10. }
  11. return flag;
  12. }

网络字节序为big-endian

判断主机字节序:

  1. int isBigEndian()
  2. {
  3. int flag = 0;
  4. short a = 0x0102;
  5. char* p = &a;
  6. if(*p==0x01)
  7. {
  8. flag = 1;
  9. }
  10. return flag;
  11. }

我的本地主机字节序为little-endian:





主机跨网通信时的字节序转换

原文:http://www.cnblogs.com/ZhangJinkun/p/4530231.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!