在我的代码中,我有一个减法,例如:(数字是任意的)
(2.3 + 6.0) - 8.3 = 0.0
我想使用printf函数来显示:.0但是无论我使用什么样的printf变体,我能得到的最好是0.0使用%。1f
有人知道吗?
答案 0 :(得分:0)
snprintf,但我更喜欢使用更简单的if / else逻辑。避免了对lib的依赖。 0.0的情况是一个独特的案例。如果有几个条件需要处理,snprintf可能会更好。
if(num == 0.0f) {
printf(".0");
}
else {
printf(".2f", num);
}
请记住,有一些罕见的fp结果接近于零,但并非绝对为零。所以要小心使用。