fyqt.net
当前位置:首页 >> C中的FloAt和DouBlE的有效数字和精度各是多少? >>

C中的FloAt和DouBlE的有效数字和精度各是多少?

float是32位,double是64位 float32位中,有1位符号位,8位指数位,23位尾数为 double64位中,1位符号位,11位指数位,52位尾数位 取值范围看指数部分 float是有符号型,其中,8位指数位,2^8=(-128—127),因此实际的范围是-2^128—2^127,约为...

double 有效数字14位,float型有效数字7位,所以double精度高。 double 占内存 8 字节,,float占内存 4 字节,float 省内存,运算速度快。 输入/输出格式 double 用 %lf, float 用 %f

基本上没有什么区别,都是表示小数不过它们的宽度不一样,或者说精度不一样,float是单精度,double是双精度它们表示小数的范围不一样,double能表示的范围,比float大double在内存中,占8个字节,float占4个字节float和double的关系就像short跟...

float 为单精度,有效数字为6~7double 为双精度,有效数字为15~16 但他们在输出时,小数点后都有6位小数 小数是有精度限制的,像3.99999这类的没办法精确表现出了,只是一个近似的数

我不太清楚你想问什么 不管什么编译器,都有 float占4个字节,即32位 double占8个字节,即64位 具体在输出中,一般情况小数点以后默认6位,但你可以通过输出函数printf控制,如printf("%.3f", 1.234);输出小数点后3位 具体有效数字位和小数部分...

float精度是2^23,能保证6位。 double精度是2^52,能保证15位。 double精度的确有那么高,但是默认打印位数没有那么多。 先#include ,然后在输出语句之前插入cout

数值不一样精度也不一样,因为c中是以2进制存储数值,转成10进制时不定是6位还是7位这也跟不同的编译器有关系,比如Turb C 和Vistrua C好像是不一样的

在C/C++中,浮点型float用32位二进制表示,十进制有效数位为7位;double用64位二进制表示,十进制有效数位为16位。值得注意的是,无论 float还是double型,在机内都是按double运算的,区别只在输出时的有效位数不同。当一个数的实际长度不足要求...

就是"精度"不同, float有6~7位有效数字, 而double有15~16位

显示的时候都是6位(dec),但是float尾数有23bit,double有52bit。也就是说,float精度约为1.1×10∧-7,double为 2.2×10∧-16。以上是一般情况

网站首页 | 网站地图
All rights reserved Powered by www.fyqt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com