C中的变量类型double 和long double的区别

所占的字节数和取值范围都是一样的 怎么区分 ??一直疑惑不解

早期C语言的浮点数有2种,float和double,C89增加了long double,C语言没有指定浮点数类型使用的长度以及不同浮点数类型之间的差别,这些是和编译器的实现相关的。
比如VC2008,Watcom C/C++里double和long double都是8个字节长,Borland C++,Digital Mars Compiler里double是8个字节,long double是10个字节,GCC,lcc win32里的double是8个字节,long double是12个字节。
一般我们可以假定float的值是double的值的子集,而double的值是long double的值的子集。
温馨提示:内容为网友见解,仅供参考
无其他回答

C中的变量类型double 和long double的区别
早期C语言的浮点数有2种,float和double,C89增加了long double,C语言没有指定浮点数类型使用的长度以及不同浮点数类型之间的差别,这些是和编译器的实现相关的。比如VC2008,Watcom C\/C++里double和long double都是8个字节长,Borland C++,Digital Mars Compiler里double是8个字节,long double是10个...

请问::c语言。双精度浮点型和长双精度浮点型区别?谢谢。。。_百度知...
综上所述,双精度浮点型(double)和长双精度浮点型(long double)的主要区别在于它们的有效位数、精度和数值范围。在选择合适的浮点数类型时,应根据程序的具体需求来权衡,以达到最佳的性能和精度平衡。

请问::c语言。双精度浮点型和长双精度浮点型区别?谢谢。。。_百度知...
浮点型变量有三种形式:单精度(float)、双精度(double)和长双精度(long double),它们之间的主要区别在于有效位数。在Turbo C中,float拥有32位,有效数字约为6-7位;double拥有64位,有效数字约为15-16位;long double拥有128位,有效数字约为18-19位。这些数字表示了在进行数学运算时,这些变量...

C语言单精度与双精度的区别?
C语言中的浮点型变量主要有三种类型:单精度(float)、双精度(double)和长双精度(long double)。它们之间的主要区别在于有效数字位数。在Turbo C中,单精度变量占用32比特,有效数字大约为6-7位;双精度变量则占用64比特,有效数字提升到15-16位;长双精度占用128比特,有效数字范围在18-19位之间。尽管...

C++中 double、 long double表示的数据范围一样那他们有什么区别
double、 long double的区别在于:在很多编译器中,double的精度不如long double。在VC6.0中double和long double一样都是分配8个字节,15位有效数字;但是在GCC中long double分配12个字节,精确度自然就比double高出四个数量级。double,即double float数据类型,是双精度浮点型的数据。计算机中表示实型...

double和long double区别
区别大了 从数学上说,double是实数(有范围限制),long是整数(有范围限制)实数包含整数 从系统分配字节来说,double变量占8个字节,long占4个字节 从计算机的存储形式来说,区别就更大了,当然,楼主初学,不必了解那么详细 ,只要记住前两点就行 ...

c语言里面的双精度型和长精度型有什么区别
浮点型变量分为单精度(float)、双精度(double)和长双精度(long double)3类。在Turbo C 中:比特(位)数 有效数字 float 32 6-7 double 64 15-16 long double 128 18-19 ANSI C 并未具体规定每种类型数据的长度、精度、数值范围,有的系统将double所增加的32位全用于存放...

C++中double和long double有什么区别?
1 double类型为C++原始类型,所有编译器均支持,而long double是C99规范增加的新类型,只有支持C99的编译器才支持long double;2 占用大小不同,double占8个字节,long double根据编译器实现不同,有占用8,10,12字节和16字节四种;在long double用8字节实现时,long double 和double没有其它区别。对于...

double与long double 有何差别
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 ...

C语言中双精度实型变量与长双精度实型变量的区别
双精度实型变量与长双精度实型变量:这个不总是有区别的。long double的精度不低于double。早期的VC里面long double就是double的别名。现代的X86编译器,double一般是64位浮点数,long double一般是80位浮点数。对于其他平台,double和long double有着各种不同的解释,一般需要类似sizeof来判定究竟long ...

相似回答