我正在使用以下代码,在某些神秘的情况下,添加的结果与预期的不同:
double _west = 9.482935905456543;
double _off = 0.00000093248155508263153;
double _lon = _west + _off;
// check for the expected result
Debug.Assert(_lon == 9.4829368379380981);
// sometimes i get 9.48293685913086 for _lon (which is wrong)
我在我的应用程序中使用了一些本机 DLL,我怀疑某些 DLL 是造成这种“错误计算”的原因,但我需要弄清楚是哪一个。谁能给我一个提示如何找出我的问题的根源?