• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

IAR编译环境下sprintf 浮点数类型失败。

1219279984@qq.com 2018-01-23 浏览量:2052
使用的是IAR8.20,在使用json_c的时候,发现运行sprintf(str,"%f",d)的时候,d的输入参数是对的,浮点型0.512,但是输出str字符串的时候变为%f,怎么回事?
有没有好的方法将浮点型转str型。
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 有什么问题吗?我代码里面就是这么写的,完全没有问题。sprintf(pressure, "%.2f", g_sensorData.pressure);
    • 发布于 2018-01-23
    • 举报
    • 评论 3
    • 0
    • 0
快没时间了 回复了 18218811680:转化结果,sprintf一下,数组里只剩一个%f。 回复
电子老工程师 回复了 :H:代表无铅符合ROHS ,TS代表包装,A1 代表版本,智库有具体解释,这个是智库链接https://iknow.ickey.cn/knowledge/detail?id=1650&source=search 回复
电子老工程师 回复了 :知识库已有介绍请查阅https://iknow.ickey.cn/knowledge/detail?id=1650&source=search 回复

其他答案 数量:6
电子老工程师 回复了  :规格书见附件 回复

快没时间了 回复了 xdsnet :对,程序里面是对的,这里是我输了的时候漏了。 回复
电子老工程师 回复了  :https://www.farnell.com/datasheets/2634965.pdf 回复

电子老工程师 回复了  :1、D24V0S1U2TQ-7 TVS DIODE 24VWM 36VC SOD523 2、ESD24VD5-TP TVS DIODE 24VWM 44VC SOD523 3、STS521240U161 TVS DIODE 24VWM 48VC SOD523 回复

电子老工程师 回复了  :这个型号是ST厂牌,我们前台挂Ti厂牌数据错误的。 回复

  • 用标准printf,你看看sprinrf的源码,应该是没有f选项,这样的话会打印default的选项,就是%f


    • 发布于2018-01-25
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :没有找到替代,尺寸相差太多了, 回复

  • IAR的%f支持有点问题,MDK上面就正常,有一个方法,如果知道浮点数的位数,可以先取浮点数的整数部分,然后再将浮点数*10的N次方之后取出最低几位。

    • 发布于2018-01-25
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

IAR编译环境下sprintf 浮点数类型失败。