课程
/后端开发
/C
/C语言入门
不是说double是双精度,精确位数有十六位啊,怎么也是输出八位
还有这个又是为啥
结果是这个,说好的16位呢。
2019-11-02
源自:C语言入门 2-8
正在回答
找到了,百度上的
double与float的区别在于在内存中存放数据时占用的内存不一样,前者8字节,后者4字节,也就是前者保存的小数位数比后者多一倍。举例说明对于1.9999996666,按照float输出,结果可能为1.999999,如果按照double可能为1.999999,这是为什么,因为C语言默认输出小数位数都取6位,这时候看起来没有区别,但是如果你进行格式控制,比如使用%.10,即小数保留10位,float输出结果为1.9999990000,而double输出结果则为1.9999996666。
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
2 回答为什么float和double的位数一样的?
2 回答本题中float和double的小数位数为什么一样?
3 回答%f和%lf区别 还有float和double怎么小数位数都一样啊
2 回答float默认小数点后六位,所以输出97.000000,但是double为啥输出也是97.000000
1 回答double和float