C语言 <math.h> frexp 函数

  • 描述

    C库函数double frexp(double x,int * exponent))返回值是尾数,exponent指向的整数是指数。结果值为x = 尾数 * 2 ^exponent)。
  • 声明

    以下是frexp函数的声明。
    
    double frexp(double x, int *exponent)
    
    参数
    • x - 这是要计算的浮点值。
    • exponent - 这是指向要存储指数值的int对象的指针。
  • 返回值

    此函数返回归一化的分数。如果参数x不为零,则归一化分数为x的2的幂,并且其绝对值始终在1/2(含)到1(不含)的范围内。如果x为零,则归一化分数为零,零存储在exp中。
    示例
    以下示例显示frexp函数的用法-
    
    #include <stdio.h>
    #include <math.h>
    
    int main () {
       double x = 1024, fraction;
       int e;
       
       fraction = frexp(x, &e);
       printf("x = %.2lf = %.2lf * 2^%d\n", x, fraction, e);
       
       return(0);
    }
    
    尝试一下
    让我们编译并运行上面的程序,它将产生以下结果-
    
    x = 1024.00 = 0.50 * 2^11