有谁能用stdio.h里的sprintf函数做到下面的输出要求吗

2019-08-14 05:20发布

有一个5位的char型的数组,我在串口调试助手hex输出"00“ ”f3“ ”0d“ ”2d“ ”bd",而00f30d2dbd的十进制值为4077727165,怎么转换才能在串口调试助手hex输出为“40""77" "72" "71" "65"呢


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
huyounong
1楼-- · 2019-08-14 06:07
这样的函数 尽量不要用。
需要输出时,自己写函数。
huanghan
2楼-- · 2019-08-14 09:21
像这样写,
printf("test..........................%d.%d.%d.%d.%d ",lwipdev.gateway[0],lwipdev.gateway[1],lwipdev.gateway[2],lwipdev.gateway[3],lwipdev.gateway[5]);
17602515236
3楼-- · 2019-08-14 12:11
 精彩回答 2  元偷偷看……
yww211
4楼-- · 2019-08-14 12:37
huanghan 发表于 2017-8-26 20:45
像这样写,
printf("test..........................%d.%d.%d.%d.%d ",lwipdev.gateway[0],lwipdev.gat ...

这样应该不可以把,但是因为4077727165是一个长整形,无法两位两位的输出吧。。。
huanghan
5楼-- · 2019-08-14 12:40
自己写个函数不就可以实现了吗
lmon
6楼-- · 2019-08-14 13:20
用%(取余)。先把4077727165每一位分出来,然后一位一位的输出。

一周热门 更多>