socket 16进制数据发送问题

lystone521 2008-12-13 09:59:28
我的server要接收到”88 b1 65 a1 fe“,是16进制,我该如何发送!
直接发送,接收到是”38 38 20 62 31 20 36 35 20 61 31 20 66 65“
谢谢!
...全文
170 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
luoyangstone 2008-12-13
  • 打赏
  • 举报
回复
学习!
lystone521 2008-12-13
  • 打赏
  • 举报
回复
问题解决!
char *buffer=new char[5];
bufer[0]=0x88;
bufer[1]=0xb1;
bufer[2]=0x65;
buffer[3]=0xa1;
bufer[4]=0xfe;
然后将该缓冲区buffer内的5个字节发出去

楼上的定义有点不对!
仍然感谢!
lystone521 2008-12-13
  • 打赏
  • 举报
回复
能详细点吗?初学!
lystone521 2008-12-13
  • 打赏
  • 举报
回复
我试一下!
rookieme 2008-12-13
  • 打赏
  • 举报
回复
”88 b1 65 a1 fe“
38 38 20 62 31 20 36 35 20 61 31 20 66 65
你是按ASCII安串发送出去的,当然不行,不是发送不对,而是发送区赋值不对
应该定义一个缓冲区:
char *buffer=new char[5];
bufer[0]=88;
bufer[1]=b1;
bufer[2]=65;
buffer[3]=a1;
bufer[4]=fe;
然后将该缓冲区buffer内的5个字节发出去
setoption9 2008-12-13
  • 打赏
  • 举报
回复
ding
wap21 2008-12-13
  • 打赏
  • 举报
回复
ding

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧