跳到主要内容

C++ log2() 以2为底的对数函数

此函数定义在 <cmath> 头文件中。

[Mathematics] log2x = log2(x) [In C++ Programming]

log2() 原型 [C++ 11 标准起]

double log2(double x);
float log2(float x);
long double log2(long double x);
double log2(T x); // 对于整数类型

log2() 函数接受单个参数,并返回 doublefloatlong double 类型的值。

log2() 参数

log2() 函数接受单个必需参数,范围为 [0, ∞]。 如果值小于零,log2() 返回 NaN(非数值)。

log2() 返回值

log2() 函数返回一个数的以2为底的对数。

log2() 返回值

参数 (x)返回值
x > 1正数
x = 1
0 > x > 1负数
x = 0-∞(负无穷)
x < 0NaN(非数值)

示例 1:C++ 中 log2() 函数如何工作?

#include <iostream>
#include <cmath>

using namespace std;

int main ()
{
double x = 13.056, result;

result = log2(x);
cout << "log2(x) = " << result << endl;

x = -3.591;
result = log2(x);
cout << "log2(x) = " << result << endl;

return 0;
}

当你运行程序时,输出将会是:

log2(x) = 3.70664
log2(x) = nan

示例 2:对整数类型的 log2() 函数

#include <iostream>
#include <cmath>

using namespace std;

int main ()
{
double result;
int x = 2201;

result = log2(x);
cout << "log2(" << x << ") = " << result << endl;

return 0;
}

当你运行程序时,输出将会是:

log2(2201) = 11.1039