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 |
Не число |
x = ±0 |
-INFINITY |
x = 1 |
+0 |
+INFINITY | +INFINITY |
Не число | Не число |
ошибка домена | Не число |
ошибка полюса | -HUGE_VAL , -HUGE_VALF , или -HUGE_VALL |
Ошибки сообщаются, как указано в _matherr
.
Замечания
Если x
это целое число, эта функция, по сути, возвращает отсчитываемый от нуля индекс наиболее значительного 1 бита x
.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
Function | Заголовок C | Заголовок C++ |
---|---|---|
log2 , , log2f log2l |
<math.h> | <cmath> |
log2 Макрос |
<tgmath.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
См. также
Справочник по алфавитной функции
exp2
, , exp2f
exp2l
log
, , logf
log10
log10f