logb
计算x的指数,以浮点形式返回。
接口定义
C interface:
float logbf(float x);
double logb(double x);
long double logbl(long double x);
参数
参数名 |
类型 |
描述 |
输入/输出 |
---|---|---|---|
x |
|
表示输入数据的浮点值。 |
输入 |
返回值
- 返回x的指数部分,单精度y ∈ [-150, 127],双精度y ∈ [-1074, 1024]。
- 输入x为±∞,返回+∞。
- 输入x为±0,返回-∞。
- 输入x为nan,返回nan。
依赖
C: "km.h"
示例
C interface:
// typical usage double x1 = 0.0, x2 = -0.0, x3 = 0x1p-1074, x4 = 0x1p1024; float x5 = 0x1p-149f; // special handing double a = INFINITY, b = -INFINITY, c = NAN; // print result printf("logb(0.0) = %.15f\n", logb(x1)); printf("logb(-0.0) = %.15f\n", logb(x2)); printf("logb(0x1p-1074) = %.15f\n", logb(x3)); printf("logb(0x1p1024) = %.15f\n", logb(x4)); printf("logbf(0x1p-150) = %.15f\n", logbf(x5)); printf("logb(INFINITY) = %.15f\n", logb(a)); printf("logb(-INFINITY) = %.15f\n", logb(b)); printf("logb(NAN) = %.15f\n", logb(c)); /* * logb(0.0) = -inf * logb(-0.0) = -inf * logb(0x1p-1074) = -1074.000000000000000 * logb(0x1p1024) = inf * logbf(0x1p-150) = -149.000000000000000 * logb(INFINITY) = inf * logb(-INFINITY) = inf * logb(NAN) = nan * * */
父主题: 指数和对数函数