这三种类型都是浮点数类型,但它们的精度和存储需求不同。float 是单精度浮点数,占用 32 位;double ...
1 运算速度不同,long double占用字节多,运算速度会慢一些;2 精度不同,long double可以表示更大的精度;3 表示范围不同,long double可以表示更大范围的浮点数。
区别大了 从数学上说,double是实数(有范围限制),long是整数(有范围限制)实数包含整数 从系统分配字节来说,double变量占8个字节,long占4个字节 从计算机的存储形式来说,区别就更大了,当然,楼主初学,不必了解那么详细 ,只要记住前两点就行 ...
double 长度 8字节。long double 长度 16字节。表示的数的数值范围大小不同,数的精度不同。见 float.h 中的规定。VC++ 6.0:LDBL_MAX 1.189731495357231765e+4932L LDBL_EPSILON 1.08420217248550443412e-019L DBL_MAX 1.7976931348623158e+308 DBL_EPSILON 2.2204460492503131e-016 ...
他们都是数据类型的一种,区别就在与取值范围,和bit大小不一样,针对不同取值,应用不同的数据类型变量,以32bits操作系统为例:短整型 占4个字节 长整型 占用8个字节(64位)double型 占8个字节 long double型 占16个字节 以上是个人理解,下面是数据类型的取值范围:数据类型取值范围 整型 [...
long double 也属于浮点类型,具体为扩展精度浮点类型,其精度不低于double,具体由编译器和硬件平台决定,⽐如在x86架构的平台上,⼤多数C编译器以80位扩展精度类型实现long double。⽽在Solaris/SPARC机器上,编译器以128位四倍精度类型实现long double。long 属于整数类型,⽬标类型⾄少有32位宽度。long ...
double是8字节,约15位十进制有效数字,long double是10字节约19位十进制有效数字。但有一点需要说明,那就是有很多编译器似乎并不实际认可,就是说你可以写long double类型,也可以写%20lf输出,都不会有什么问题,但计算结果却一样,并看不到long double的精度优势。用printf("%d %d\n",sizeof(...
一、主体不同 1、 long:表示一种长整型数据。2、float:浮点型数据类型 3、double:双精度浮点数据型。二、类型不同 1、 long:默认为有符号长整型,含4个字节。2、float:用于存储单精度浮点数或双精度浮点数。3、double:表示十进制的15或16位有效数字。三、取值范围不同 1、 long:取值范围为...
也就是說,long double只是定義為至少跟double一樣精度(即是可以一樣)在wiki上的long double上找到:...