开发者社区> 问答> 正文

linux 网络编程 打印接收数据包

server在接收到client通过UDP传送的数据包之后,打印出来

printf("%02x ",buff);
其中buff是char数组,且足够大,server也可以正常解析,但是打印出的结果竟然是
00 11 22 33 45 56 aa ab
98 ff fe a2 d3 25 78 c6
f2 ffffffd3 ffffffc4 11 22 33 44 55

很明显,d3--->ffffffd3 , c4--->ffffffc4
请问这是怎么回事?谢谢

展开
收起
a123456678 2016-06-23 11:35:40 2194 0
1 条回答
写回答
取消 提交回答
  • 数据包里的内容,也就是打印出来的00 11 22 33等这些数据是client自己写进去的么?出现一串f很有可能是数据类型转换的问题,比如原本是unsigned char的数据,server收到存储为char类型,打印出来就会多了一堆f,可以检查一下这方面

    2019-07-17 19:46:04
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载