5
我有些无法理解下面的代码:双比较 - 数字界线
double a = -1000;
double b = numeric_limits<double>::min();
if (a < b)
{
cout << "why?";
}
,输出是:
为什么呢?
-1000
如何低于numeric_limits<double>::min()
?
我有些无法理解下面的代码:双比较 - 数字界线
double a = -1000;
double b = numeric_limits<double>::min();
if (a < b)
{
cout << "why?";
}
,输出是:
为什么呢?
-1000
如何低于numeric_limits<double>::min()
?
这是因为numeric_limits<double>::min();
是以双精度浮点数表示的最低正数,而不是最负数。
http://en.cppreference.com/w/cpp/types/numeric_limits/min注意到与'min(')相比,'minimum' – JSF