为什么会这样scanf()
需要l
in "%lf
“当读一个double
, when printf()
可以使用 ”%f
“无论它的参数是否是double
or a float
?
示例代码:
double d;
scanf("%lf", &d);
printf("%f", d);
因为对于采用可变参数的函数,C 会将浮点数提升为双精度数。指针不会提升为任何内容,因此您应该使用%lf
, %lg
or %le
(or %la
在 C99 中)以双打形式读取。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)