了解logb()的工作原理

时间:2010-11-15 16:28:10

标签: c++ c

我正在尝试理解logb()的工作,它是manual说“ logb()函数计算x的指数,这是$ \ log_r ^ {|的整数部分x |} $,作为有符号浮点值,对于非零x,,其中r是机器浮点算术的基数。“

我很想知道为特定机器计算这个r吗?

2 个答案:

答案 0 :(得分:4)

FLT_RADIX中的

<float.h>。在现实世界中,它总是2,IEEE浮点数要求它为2。

答案 1 :(得分:3)

您可以使用标题std::numeric_limits中的模板<limits>在给定计算机上查询给定浮点类型的radix

#include <limits>

std::numeric_limits<float>::radix;