找回密码
 立即注册
查看: 121|回复: 8

大神们进来下,浮点数用printf打印出错了

[复制链接]

该用户从未签到

1

主题

1

回帖

27

积分

新手上路

积分
27
发表于 2024-4-22 01:57:55 | 显示全部楼层 |阅读模式
        double f=123456.8991;
        printf("double=%f \r",f);             显示的是:double=123456.900000
        printf("double=%.4f \r",f);      显示的是:double=123456.9000
       只能输出1位小数,后面给我补零了,大神们,你们是怎处理的呢,我用的的STC8H1K08T



回复 送花

使用道具 举报

该用户从未签到

20

主题

580

回帖

1229

积分

荣誉版主

积分
1229
发表于 2024-4-22 08:35:48 | 显示全部楼层
本帖最后由 tzz1983 于 2024-4-22 08:37 编辑

C51不支持double类型, 仅支持flaot类型。

实际上是把f转换为flaot类型后再显示的,

flaot的十进制有效位只有6到7位, 所以后面给你补0了
回复 支持 1 反对 0 送花

使用道具 举报

  • TA的每日心情
    无聊
    11 小时前
  • 签到天数: 154 天

    [LV.7]常住居民III

    20

    主题

    1182

    回帖

    2845

    积分

    金牌会员

    积分
    2845
    发表于 2024-4-22 09:04:21 | 显示全部楼层
    原因是楼上版主说的,,解决方法的话可以按照自己的精度扩大对应的位数然后整体按整形计算 最后结果按整形发送。注意的是别超了整形的位数。
    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    1 小时前
  • 签到天数: 85 天

    [LV.6]常住居民II

    0

    主题

    223

    回帖

    548

    积分

    高级会员

    积分
    548
    发表于 2024-4-22 11:15:13 | 显示全部楼层
    又学到新知识了
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    13 小时前
  • 签到天数: 87 天

    [LV.6]常住居民II

    7

    主题

    847

    回帖

    1462

    积分

    金牌会员

    积分
    1462
    发表于 2024-4-22 11:42:46 | 显示全部楼层
    51竟然不支持double啊

    点评

    51 支持double, 但这个 double 也是单精度的  详情 回复 发表于 2024-4-22 14:58
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    11 小时前
  • 签到天数: 188 天

    [LV.7]常住居民III

    12

    主题

    356

    回帖

    1226

    积分

    金牌会员

    积分
    1226
    发表于 2024-4-22 13:45:21 | 显示全部楼层
    涨知识了,51不支持double类型
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    16 小时前
  • 签到天数: 158 天

    [LV.7]常住居民III

    39

    主题

    901

    回帖

    4312

    积分

    荣誉版主

    积分
    4312
    发表于 2024-4-22 14:58:58 | 显示全部楼层
    soma 发表于 2024-4-22 11:42
    51竟然不支持double啊

    51 支持double, 但这个 double 也是单精度的
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    11 小时前
  • 签到天数: 84 天

    [LV.6]常住居民II

    9

    主题

    154

    回帖

    460

    积分

    中级会员

    积分
    460
    发表于 2024-4-22 18:38:08 | 显示全部楼层
    回复 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    1

    回帖

    27

    积分

    新手上路

    积分
    27
     楼主| 发表于 2024-4-24 00:11:51 | 显示全部楼层
    非常感谢,学习了
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-31 19:45 , Processed in 0.068765 second(s), 62 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表