相关疑难解决方法(0)

从double转换为float时检测精度损失

我正在编写一段代码,我必须将其从double转换为float值.我正在使用boost :: numeric_cast进行此转换,这将提醒我任何溢出/下溢.但是我也有兴趣知道这种转换是否会导致一些精确损失.

例如

    double source =  1988.1012;
    float dest = numeric_cast<float>(source);
Run Code Online (Sandbox Code Playgroud)

产生具有价值1988.1的dest

有没有什么方法可以检测到这种精确损失/舍入

c++ floating-point rounding-error rounding floating-accuracy

7
推荐指数
2
解决办法
4006
查看次数