遵循位级浮点编码规则,实现具有如下原型的函数:
/* * Compute (int) f. * If conversion causes overflow or f is NaN, return 0x80000000 */ int float_f2i(float_bits f);
对于浮点数f,这个函数计算(int)f。如果f是NaN,你的函数应该向零舍入。如果f不能 用整数表示(例如,超出表示范围,或者它是一个NaN,那么函数应该返回0x80000000。
测试你的函数,对参数f可以取的所有232个值求值,将结果与你使用机器的浮点运算得到的结果相比较。