How to use “%f” to populate a double value into a string with the right precision
我正在尝试使用
但是精度被削减到小数点后六位。 我需要大约十进制的精度。 如何实现? %[width]。[precision] 宽度应包含小数点。 %8.2表示8个字符宽; 点前5位,后面2位。 该点保留一个字符。 5 +1 + 2 = 8 您想要的是一个修饰符:
man sprintf将有关于格式说明符的更多详细信息。
尝试改用
双x = 3.14159265; 注意-sprintf的输出将通过C语言环境而变化。 这可能是您想要的,也可能不是。 请参见语言环境文档/手册页中的LC_NUMERIC。 有关更完整的参考,请参见Wikipedia printf文章," printf格式占位符"部分以及同一页面上的一个很好的示例。 |