Chinaunix首页 | 论坛 | 博客
  • 博客访问: 111434
  • 博文数量: 20
  • 博客积分: 334
  • 博客等级: 一等列兵
  • 技术积分: 223
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-08 10:02
文章分类

全部博文(20)

文章存档

2013年(6)

2012年(2)

2011年(12)

我的朋友

分类: C/C++

2011-10-20 12:53:22

网络通信发送数据包都是以字节流 (low byte first , high byte first) 发送。
例如:

| 数据包长度 | id | 数据包内容 | 

发送数据包长度时候,或者是short, long 。 那么我们怎么处理整形数据与字节之间的转换。
以下实现: 


  1. // Short to bytes

  2. + (Byte *)GetBytesForShort:(int16_t)value{
  3. Byte bytes[2];
  4. Byte *b = bytes;
  5. *((int16_t *)b) = value;
  6. return bytes
  7. }

  8. // Long to bytes
  9. + (Byte *)GetBytesforLong:(int32_t)value{
  10. Byte bytes[4];
  11. Byte *b = bytes;
  12. *((int32_t *)b) = value;
  13. return bytes
  14. }

阅读(1768) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~