什么是c printf%f默认精度?

时间:2009-07-30 16:33:43

标签: c++ c printf precision

我很好奇:

如果你执行printf("%f", number);语句的精确度是多少?即将显示多少个小数位?这个编译器是否依赖?

3 个答案:

答案 0 :(得分:21)

ANSI C标准在7.19.6.1节中说明了f格式说明符:

  

如果缺少精度,则给出6位数

答案 1 :(得分:5)

%f的默认精度为6位数(参见ISO C99规范,7.19.6.1 / 7)。

答案 2 :(得分:5)

本书C: A Reference Manual指出,如果没有指定精度,则默认精度为6(即小数点后6位)。

一个警告是,如果数字是inf(即1.0 / 0.0)或NaN,则C99指定输出应为inf,-inf,infinity,-infinity或nan等....