Share via


log2, log2f, log2l

判斷指定值的二元 (以 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 索引。

根據預設,此函式的全域狀態會限定于應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。

需求

函式 C 標頭 C++ 標頭
log2, log2f, log2l <math.h> <cmath>
log2 宏觀 <tgmath.h>

如需相容性詳細資訊,請參閱相容性

另請參閱

字母函數參考
exp2, exp2f, exp2l
log, logf, log10, log10f