.- .

确定指定值的二进制(以 2 为底)对数。

语法

double log2(
   double x
);

float log2(
   float x
); //C++ only

long double log2(
   long double x
); //C++ only

float log2f(
   float x
);

long double log2l(
   long double x
);

#define log2(X) // Requires C11 or higher

参数

x
要确定其以 2 为底的对数的值。

返回值

成功后,函数返回 x 的 base-2 日志。

否则,这些函数可能会返回以下值之一:

问题 返回值
x< 0 NaN
x = ±0 -INFINITY
x = 1 0+
+INFINITY +INFINITY
NaN NaN
域错误 NaN
极点错误 -HUGE_VAL、-HUGE_VALF 或 -HUGE_VALL

_matherr 中所指定的内容报告错误。

备注

如果 x 是整数,则此函数实质上会返回最重要的 1 位 x 的以 0 为底的指数。

默认情况下,此函数的全局状态范围限定为应用程序。 若要更改此行为,请参阅 CRT 中的全局状态

要求

函数 C 标头 C++ 标头
.- . <math.h> <cmath>
log2 <tgmath.h>

有关兼容性的详细信息,请参阅 兼容性

另请参阅

按字母顺序显示的函数参考
.- .