5

考虑以下代码片段

double id = ?;
double res;
long unsigned *res_u = (long unsigned*)&res;

long unsigned i;
for (i = 0; i < (long unsigned)-1; i++){
    double *d1 = (double*)&i;
    res = id + *d1;
    assert(*res_u == i);
}

我的问题: 是否存在价值id,因此断言适用于所有人i?换句话说,对于我们中间的数学家来说:加法的中性元素是否存在 double ?

4

1 回答 1

8

-0.自相矛盾的是用作加法中性的浮点值。

+0.几乎是,但-0. + (+0.)使+0..

除此之外,+inf + (-0.)制造+inf-inf + (-0.)制造-infNaN + (-0.)制造NaN

于 2013-04-29T20:47:39.633 回答