您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> C/C++ >> 2字节整型如何通过Socket发送

2字节整型如何通过Socket发送

来源:网络整理     时间:2016/8/27 7:43:56     关键词:

关于网友提出的“ 2字节整型如何通过Socket发送”问题疑问,本网通过在网上对“ 2字节整型如何通过Socket发送”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 2字节整型如何通过Socket发送
描述:

服务器端与客户端通过Socket通信。发送2字节的整型变量,接收端根据长度截取发送端发送的内容,发送端如何发送2字节的整型变量才能保证接收端能够正确接收数据?C++ 中Socket是不是必须的转换成字符串?以short 类型为例 ,例如 0x1234占2字节,如果在发送过程中转化成字符串,就变成了四个字节了吧?


解决方案1:

直接send就可以啊,如果两边大小端相同,直接强制转换一下就可以用。
send((char*)uint,2);

解决方案2:


buf[0] = num/256
buf[1] = num%256
解决方案3:

转换成16进制即可,如果要压缩的话采用BCD压缩形式都可以发送的。

解决方案4:

引用 楼主 sushe225226 的回复:
服务器端与客户端通过Socket通信。发送2字节的整型变量,接收端根据长度截取发送端发送的内容,发送端如何发送2字节的整型变量才能保证接收端能够正确接收数据?C++ 中Socket是不是必须的转换成字符串?以short 类型为例 ,例如 0x1234占2字节,如果在发送过程中转化成字符串,就变成了四个字节了吧?

这个是大小端的问题,和机器有关,和c++没关系。 解决方案5:

不知道有多少前人掉在TCP Socket
send(人多)send(病少)send(财富)
recv(人多病)recv(少财富)
陷阱里面啊!
http://bbs.csdn.net/topics/380167545


以上介绍了“ 2字节整型如何通过Socket发送”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3628172.html

相关图片

相关文章