相关疑难解决方法(0)

为什么微软放弃了长双数据类型?

不久前我写了一个程序,它使用了一些阶乘函数.我使用long double数据类型来支持"相对"大数字.

现在,我从代码块改为Visualstudio 2010,我想知道为什么我的程序不再工作,直到我在一些研究中意识到MS已经放弃了长双数据类型.这有什么特别的原因吗?对我而言,它看起来非常像技术方面的倒退.

有没有其他选择?(我也很乐意使用boost库中的替代品).

c++ floating-point long-double visual-studio

21
推荐指数
1
解决办法
7695
查看次数

为什么我的64位机器上的双倍和长倍完全相同?

这个问题可能听起来像初学者,但是当我发现这个问题时,我认为我要么是初学者,要么我的作品缺少一些东西:

int main()
{
    cout << sizeof(double) << endl;
    cout << sizeof(long double) << endl;

    cout << DBL_DIG << endl;
    cout << LDBL_DIG << endl;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

计划产出:

8

8

15

15

我认为long double是10个字节,有18个十进制数字,而double8个字节,有15个数字,但似乎我错了.

为什么会这样?

在64位机器上使用MSVC 2010.

c++ double long-double

9
推荐指数
1
解决办法
4314
查看次数

标签 统计

c++ ×2

long-double ×2

double ×1

floating-point ×1

visual-studio ×1