C/C++ frexp函数

最后更新于:2020-09-20 20:58:27

一.frexp函数简介

C语言frexp函数主要把一个浮点数分解为尾数和指数,frexp函数声明如下:

#include <math.h>// 需要包含头文件
/*
*描述:
*
*参数:
*   [in] x:要被计算的浮点数
*   [out] expptr:指向一个对象的指针,该对象存储了指数的值
*
*返回值:该函数返回规格化小数。
*       如果参数 x 不为零,则规格化小数是 x 的二次方,且它的绝对值范围从 1/2(包含)到 1(不包含)。
*       如果 x 为零,则规格化小数是零,且零存储在 exp 中。
*/
double frexp( double x, int *expptr );  

二.frexp函数实战

frexp函数的使用案例如下:

/************************************************************************/
/*@文件名      : C语言frexp函数.cpp
/*@日  期      : 2020/8/27 19:37
/*@作  者      : 猿说编程
/*@公众号      : 猿说编程
/*@博客        : www.shuopython.com
/*@描述        : C语言frexp函数 - C/C++教程
/************************************************************************/

#include <math.h>   
#include <stdio.h>   
int main( void )   
{  double x, y;   
    int n;   
    x = 16.4;   
    y = frexp( x, &n );   
    printf( "frexp( %f, &n ) = %f, n = %d\n", x, y, n );
}  
/*
输出:   
frexp( 16.400000, &n ) = 0.512500, n = 5   
验证:   16.4 = 0.5125 * 2^5 = 0.5125 * 32
*/


1. 三目运算符

2. 逗号表达式

3. char和wchar_t相互转换

4. wprintf输出中文乱码

5. unicode和多字节区别

6. Debug和_DEBUG区别

7. Debug和Release区别

8. _WIN32/WIN32/_WIN64/WIN64区别

9. memcpy/strcpy/strcpy_s区别

10. NaN(Not a Number)

11. INF:infinite)



转载请注明: 猿说编程 »C/C++教程 »frexp函数

赞赏

微信赞赏支付宝赞赏