最怕认真 2015-11-20 08:39 采纳率: 0%
浏览 1357

关于c socket的几个思考

没接触过这个东西,看了几天晕晕乎乎的,现在有几个地方不是很理解,还望大牛们不吝赐教。
send函数发送的是

 char*

类型的数据,那么在发送诸如 Uint16 32 string类型的时候就涉及到类型转换的问题了。
char是有符号的int8,这个直接强转会不会有问题啊,里面的道理不懂。
第二个,我们一般都会自己封装socket,在组包的时候,
比如我现在要发送的数据是
UINT16 ID
string name
UINT8 sex
我应该怎么组包呢,不可能是一条一条数据发送吧,肯定是把三条数据整合成一个

char* 

然后再发送的吧。求高人指点!实在像不太明白啊

  • 写回答

2条回答 默认 最新

  • 关注

    其实发送都是发送首地址和长度,不管你是int unsigned int 还是什么,它在内存中的值是不变的,只是所占位数不一样
    如果是发送包就把他们做成结构体,然后发送结构体就行

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!