函数原型: double _logb( double x );
所属库: float.h(是C语言标准库的一部分)
函数功能: 返回double型参数x的指数值。具体见程序示例。
相关函数: pow、exp
#include <stdio.h>
#include <float.h>
#include <math.h>
int main( void )
{
printf("%f\", pow(2.0, 3.0) );
printf("%f\", _logb(8.0) );
printf("%f\", pow(2.0, 5.0) );
printf("%f\", _logb(36.673) );
printf("%f\", _logb(32.0) );
printf("%f\", _logb(31.9) );
printf("%f\", _logb(64.0) );
return 0;
}
输出:
8.000000
3.000000
32.000000
5.000000
5.000000
4.000000
6.000000
由此可见,由于2的5次方是32,2的6次方是64。所以_logb(32.0)、_logb(63.9)都返回5,而_logb(31.9)返回4。