spb*_*ots 10 c c++ precision printf
我很好奇:
如果你做了printf("%f", number);什么是声明的精确度?即会出现多少小数位?这个编译器是否依赖?
printf("%f", number);
Lau*_*ves 23
ANSI C标准在7.19.6.1节中说明了f格式说明符:
如果精度丢失,则给出6位数字
Pav*_*aev 6
默认精度为%f6位(参见ISO C99规范,7.19.6.1/7).
%f
Kar*_*and 6
书中的C:A参考手册指出,如果没有指定精度,则默认精度为6(即小数点后6位).
需要注意的是,如果数字是inf(即1.0/0.0)或NaN,则C99指定输出应为inf,-inf,infinity,-infinity或nan等....
归档时间:
16 年,3 月 前
查看次数:
6949 次
最近记录:
8 年,2 月 前