【发布时间】:2014-11-04 22:29:39
【问题描述】:
我遇到了一些奇怪的行为,至少在我自己的想法中,在调试一些涉及确定加法运算是否会下溢双精度的代码时。这是一个演示我发现的示例程序。
#include <iostream>
#include <limits>
using std::cout;
using std::endl;
using std::numeric_limits;
int main()
{
double lowest = numeric_limits<double>::lowest();
bool truth = (lowest + 10000) == lowest;
cout << truth << endl;
}
当我执行这段代码时,我得到了真实的结果。这是一个错误还是我只是睡眠不足?
【问题讨论】:
标签: c++ double numeric-limits