cstring send=“1234567890”,我现在要得到该字符两个字节长度得到报文头发送给服务器,就是在内存中为0x00,0x0A和字符串内容发送给服务器,把0X00和0X0A是不可见字符,如何写入string中?

解决方案 »

  1.   

    想想看,在字符串send前面加上0x00,0x0A之后,
    cstring send = [0x00, 0x0A, 1, ...., 9, 0x00],这个字符串就变成了空字符串,因为第一个字节=0。
    所以你要传数混合类型的数据,建议直接用char*。
    如果非要传长度,只有把数字转换为字符串了。比如cstring send=“101234567890”,前两位是长度。
      

  2.   

    0xffff转换为字符, 是多长呢 65536 至少要5个字节。
    发送数据按二件制发送不可以吗,为什么一定要转成string发送.