第1个回答 2010-07-23
double 是占8个字节,long double 占16个字,就好比一个大箱子和一个小箱子,大箱子是小箱子的2倍。当然大箱子装的东西要更多些,保存的精度也更加精确。
第2个回答 推荐于2017-10-11
其实标准并没规定float, double, long double各是多长, 不过一般的实现都是用的ansi标准的32位和64位浮点数(这个是ansi的浮点数标准而不是c标准)。
long double目前就是64位, 并不比double更长。 当然也许新出的某个编译器在64位系统下提供更长的浮点数, 这都是有可能的, 而且我相信迟早这个long double会真正长起来
关于你用的编译器的情况, 你可以打印 sizeof(long double)试试看本回答被提问者采纳
第3个回答 2010-07-24
double是8字节,long double C标准没有详细规定,只说了sizeof(long double)>=sizeof(double)。
在Vc6里,double和long double是相同的。gcc编译sizeof(long double)的结果是12。
这个具体长度与机器和编译器、操作系统有关。
第4个回答 2010-07-23
long double精度更高