长双精度占几个字节?

来源:百度知道 编辑:UC知道 时间:2024/07/04 15:39:51
最近看两本不同的C语言的书,上面讲到长双精度时对其占位大小出现了分歧,一本书上说是16bytes,另一个版本说是在VC中占8bytes,在TC或是BC中占10bytes。能指导一下吗?

你说的是long double吗?
这个根据不同的平台会有所不同。在VC下面跟double一样,64位,8个字节。
在部分平台下是80位。当然也有16个字节128位的。

通常来说理解成8个字节就好了。

  长双精度占用8个字节。
  双精度型(DOUBLE)数据是具有更高精度的一种数据型数据,用字母B表示。它采用固定长充浮点格式存储,占用8个字节。
  在计算机中每个双精度型数据占用8个字节(64位)的存储空间,可表示的正数范围是:4.94065645841247*10^-324~1.79769313486232*10^308,可表示的负数范围是:-1.79769313486232*10^308~-4.94065645841247*10^-324。双精度型数据最多可以有15位有效数字。

自己去试试就OK了,每个编译器的规定会有不同,书上说的也可能过时

#include<stdio.h>
void main()
{
int a;//整型
long double b;//长双精度
printf("int=%d字节,long_double=%d字节\n",sizeof(a),sizeof(b));
}

其它类型的自己添加进去,用sizeof函数测一下就知道那个编译器到底给哪个类型的规定了多少字节了

学编程重在实践

跟计算机有关系,但现在几乎全是8个字节了