C语言frexp()函数:提取浮点数的尾数和指数部分
C语言 frexp() 函数用来提取一个浮点数(小数)的指数部分和尾数部分。
浮点数在内存中存储时被分成三部分,分别是符号位、指数部分和尾数部分,不了解的读者请猛击《小数在内存中是如何存储的,揭秘诺贝尔奖级别的设计(长篇神文)》。
double frexp(double x, int *exponent) 将提取浮点数 x 的尾数部分和指数部分,指数部分被存入参数 exponent 中,尾数部分被放入返回值中,最终 x = mantissa * 2 ^ exponent(mantissa 表示尾数)。
头文件:math.h
语法/原型:
返回值:浮点数 x 的尾数部分。
【实例】使用C语言 frexp() 函数提取浮点数 19.625 的指数部分和尾数部分。
mant: 0.6132812500
exp:5
浮点数在内存中存储时被分成三部分,分别是符号位、指数部分和尾数部分,不了解的读者请猛击《小数在内存中是如何存储的,揭秘诺贝尔奖级别的设计(长篇神文)》。
double frexp(double x, int *exponent) 将提取浮点数 x 的尾数部分和指数部分,指数部分被存入参数 exponent 中,尾数部分被放入返回值中,最终 x = mantissa * 2 ^ exponent(mantissa 表示尾数)。
头文件:math.h
语法/原型:
double frexp(double x, int *exponent)
参数说明:- x:要被计算的浮点数。
- exponent:一个指向指数部分的指针。
返回值:浮点数 x 的尾数部分。
【实例】使用C语言 frexp() 函数提取浮点数 19.625 的指数部分和尾数部分。
#include <stdio.h> #include <math.h> int main() { int exp; double mant = frexp(19.625, &exp); printf("mant: %.10lf\nexp:%d\n", mant, exp); return 0; }运行结果:
mant: 0.6132812500
exp:5
所有教程
- socket
- Python基础教程
- C#教程
- MySQL函数
- MySQL
- C语言入门
- C语言专题
- C语言编译器
- C语言编程实例
- GCC编译器
- 数据结构
- C语言项目案例
- C++教程
- OpenCV
- Qt教程
- Unity 3D教程
- UE4
- STL
- Redis
- Android教程
- JavaScript
- PHP
- Mybatis
- Spring Cloud
- Maven
- vi命令
- Spring Boot
- Spring MVC
- Hibernate
- Linux
- Linux命令
- Shell脚本
- Java教程
- 设计模式
- Spring
- Servlet
- Struts2
- Java Swing
- JSP教程
- CSS教程
- TensorFlow
- 区块链
- Go语言教程
- Docker
- 编程笔记
- 资源下载
- 关于我们
- 汇编语言
- 大数据
- 云计算
- VIP视频