在工作中,我们有 MSVS2010 Ultimate,我正在编写一个使用实数运行详尽模拟的程序。我遇到了不小的舍入错误,我已经采取了合理的步骤来确保我的算法在数值上尽可能稳定。
我想切换到 128 位四倍精度浮点数(long double,对吗?),看看它有多大的不同。
我已经替换了double
with的所有相关实例long double
,重新编译并再次运行了我的虚拟模拟,但结果与以前完全相同。
根据我在 C/C++ 中的项目属性页,这些是我的(调试)编译器选项:
/ZI /nologo /W3 /WX- /Od /Oy- /D "_MBCS" /Gm /EHsc /RTC1 /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fp"Debug\FFTU.pch" /Fa "Debug\" /Fo"Debug\" /Fd"Debug\vc100.pdb" /Gd /analyze- /errorReport:queue
我的开发 CPU 是 Core2 Duo T7300,但目标机器是 i7。两种安装都是 Windows 7 64 位。