我很好奇:
如果执行printf("%f", number);,语句的精度是多少?也就是说,小数点后几位会出现?这个编译器是依赖的吗?
发布于 2009-07-30 16:47:23
在7.19.6.1节中,ANSI标准对f格式说明符做了如下规定:
如果缺少精度,则为6位数字提供
发布于 2009-07-30 16:50:05
%f的默认精度为6位(参见C99规范7.19.6.1/7)。
发布于 2009-07-30 16:52:55
C: A Reference Manual一书指出,如果未指定精度,则默认精度为6(即小数点后6位)。
需要注意的是,如果数字是inf (即1.0/0.0)或NaN,则C99指定输出应为inf、-inf、infinity、-infinity或nan等。
https://stackoverflow.com/questions/1207762
复制相似问题