log2 - calculate the base-2 logarithm of a number

log2, log2f, log2l - base-2 logarithmic function

`#include <math.h>`

```
double log2(double x);
```

```
#include <math.h>
double log2(double x);
float log2f(float x);
long double log2l(long double x);
```

Link with `-lm`

.

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

This function calculates the base-2 logarithm of `x`

.

These functions return the base 2 logarithm of `x`

.

This function returns, as a `double`

, the base-2 logarithm of `x`

.

On success, these functions return the base 2 logarithm of `x`

.

For special cases, including where `x`

is 0, 1, negative, infinity, or NaN, see log(3).

`#include <math.h>`

#include <stdio.h>

int main(void)
{
printf("This is CS%i\n", (int) log2(1125899906842624));
}

See math_error(7) for information on how to determine whether an error has occurred when calling these functions.

For a discussion of the errors that can occur for these functions, see log(3).

These functions first appeared in glibc in version 2.1.

For an explanation of the terms used in this section, see attributes(7).

Interface | Attribute | Value |

log2(), log2f(), log2l() | Thread safety | MT-Safe |

C99, POSIX.1-2001, POSIX.1-2008.

The variant returning `double`

also conforms to SVr4, 4.3BSD.

This page is part of release 5.10 of the Linux `man-pages`

project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.