![]() |
Home | Libraries | People | FAQ | More |
函數float_distance 查找兩個浮點數之間的間隔/比特/ULP. 如果浮點數有有效位數被看作整數, 那麼這兩個浮點數之間的差就是 ULP/間隔/比特數目的不同.
#include <boost/math/special_functions/next.hpp>
namespace boost{ namespace math{ template <class FPT> FPT float_distance(FPT a, FPT b); }} // namespaces
返回a 和 b之間的距離:結果永遠都是一個有符號的整數值 (存儲在浮點類型 FPT中) 用於表示 a 和b之間可以表示的間隔的數目。
注意:
float_distance(a, a)
永遠返回 0.
float_distance(float_next(a), a)
永遠返回 1.
float_distance(float_prior(a), a)
永遠返回 -1.
函數float_distance
等價於計算a和b之間的 ULP (Units in the Last Place)
除了它返回一個有符號數用於指示a是否大於b。.
如果距離大太,那麼就有可能無法以一個FPT類型的整數來表示距離, 但在實際中,這似乎不太可能成為一個問題。.