如果在输出时不特别注明小数后最多就是6位,但如果注明了小数位数达到一定的数值,那么对float,double是不同的,可以试运行如下例子:
#include
main()
{
float a=0.123456789;
double b=0.123456789;
//输出:
printf("a=%11.9f,b=%11.9lf",a,b);
return 0;
}
你就可以看出其间的差异了。
浮点, 顾名思义. 它的点可以乱动. 你想让它在哪它在哪. 如果整数大了, 小数存的就少了. 小数精确了, 整数存的就小了.
试试long double