我想打印一个浮点数,它有两个整数位和小数点后六位。如果我只使用
我不知道这是否总是在 C 中发生,还是只因为我在微控制器中使用 C(确切地说是 CCS),但参考资料表明,
如果我的浮点数是
所以问题是... 我该如何打印出我的六位数字(只有这六位数字,以防万一后面跟着零或其他内容)?
printf("%f", myFloat)
,我会得到截断的值。我不知道这是否总是在 C 中发生,还是只因为我在微控制器中使用 C(确切地说是 CCS),但参考资料表明,
%f
只获取截断的浮点数。如果我的浮点数是
44.556677
,那么我只会输出其中的前两位小数 "44.55"
。所以问题是... 我该如何打印出我的六位数字(只有这六位数字,以防万一后面跟着零或其他内容)?
%2.6f
听起来会是正确的格式字符串。 - Jonfloat
,则无论如何都不会得到 8 个有意义的有效十进制数字。你现在要求的精度比数据类型所拥有的还要高。最接近44.556677
的 float 值是 44.55667 87719 72656 25 。 - David Heffernan