C++ numeric_limits:<double>:epsilon() 表示 1 以外的值



numeric_limits<double>::epsilon()被定义为1.0和下一个可由double表示的值之间的差,但我想查找/计算1.0以外的值的numeric_limits<double>::epsilon()?有办法做到这一点吗?

如注释所示,您可以使用std::nextafter:

float       nextafter ( float from, float to );

返回从到的下一个可表示值。

float f = /* ... */
float next_after_f = std::nextafter(f, std::numeric_limits<float>::infinity());

相关内容

最新更新