You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Raylib(C++)中DrawText()绘制浮点数时末尾多出多余0的问题

解决Raylib绘制浮点数时末尾多余0的问题

问题出在%f格式符的默认行为上——它会强制保留6位小数,所以哪怕你的变量是5.6,也会被补成5.600000。给你两种简单的解决方法:

方法1:指定固定小数位数

如果你确定只需要显示1位小数,直接用%.1f格式符明确限制小数位数:

DrawText(TextFormat("%.1f", integrity), 300, 160, 30, WHITE);

这样输出结果就是你想要的5.6。如果需要更多位数,比如2位就写%.2f,以此类推。

方法2:自动去掉末尾多余的0

如果想让输出更灵活(比如整数时不显示小数点,小数时自动去掉末尾的0),可以用%g格式符,它会自动优化输出格式:

DrawText(TextFormat("%g", integrity), 300, 160, 30, WHITE);

这个格式符会去掉末尾无意义的0,对于5.6输出5.6,如果变量是5.0,就会输出5。

内容的提问来源于stack exchange,提问作者Pankake Flipper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 16:00:53