使用头文件cfloat中的符号常量获知浮点类型数据的表数范围---gyy整理
使用头文件cfloat中的符号常量获知浮点类型数据的表数范围
cfloat头文件包含了系统的浮点数的长度限制
头文件climits中的符号常量是获知整型数据的表数范围,并不能获取浮点类型数据的表数范围。
<climits>该头文件包含了系统的整数长度的限制,它已取代了头文件<limits.h>
<cfloat> 该头文件包含了系统的浮点数的长度限制,它以取代了头文件<float.h>
<cfloat> 头文件各字符常量的取值和含义
上图中在程序中常用到的定义浮点数大小的符号常量如下
FLT_MIN float类型最小的正数
FLT_MAX float类型最大的正数
DBL_MIN double类型最小的正数
DBL_MAX double类型最大的正数
FLT_MANT_DIG float类型的二进制有效数字位
DBL_MANT_DIG double类型的二进制有效数字位
FLT_DIG float类型的精度
DBL_DIG double类型的精度
FLT_MIN_EXP float型二进制浮点数的最小指数
FLT_MAX_EXP float型二进制浮点数的最大指数
DBL_MIN_EXP double型二进制浮点数的最小指数
DBL_MAX_EXP double型二进制浮点数的最大指数
FLT_MIN_10_EXP float型十进制浮点数的最小指数
FLT_MAX_10_EXP float型十进制浮点数的最大指数
DBL_MIN_10_EXP double型十进制浮点数的最小指数
DBL_MAX_10_EXP double型十进制浮点数的最大指数
- #include <iostream>
- #include <cfloat>
- using namespace std;
- int main()
- {
- cout << "Size:" << endl;
- cout << "float is " << sizeof (float) << "bytes." << endl;
- cout << "double is " << sizeof (double) << "bytes." << endl;
- cout << "long double is " << sizeof (long double) << "bytes." << endl << endl;
- cout << "Bits per byte = " << CHAR_BIT << endl << endl;
- cout << "Maximum values:" << endl;
- cout << "float: " << FLT_MAX << endl;
- cout << "double: " << DBL_MAX << endl;
- cout << "Minimum values:" << endl;
- cout << "float: " << FLT_MIN << endl;
- cout << "double: " << DBL_MIN << endl;
- system("pause");
- return 0;
- }
运行结果
- #include <iostream>
- #include <cfloat>
- using namespace std;
- int main()
- {
- //浮点数在内存中的存储大小(字节)
- cout << "浮点数在内存中的存储大小(字节):" << endl;
- cout << "float is " << sizeof (float) << "bytes." << endl;
- cout << "double is " << sizeof (double) << "bytes." << endl;
- cout << "long double is " << sizeof (long double) << "bytes." << endl << endl;
- cout << "Bits per byte = " << CHAR_BIT << endl << endl;
- //浮点数的最大值
- cout << "浮点数的最大值:" << endl;
- cout << "float: " << FLT_MAX << endl;
- cout << "double: " << DBL_MAX << endl;
- //浮点数的最小值
- cout << "浮点数的最小值:" << endl;
- cout << "float: " << FLT_MIN << endl;
- cout << "double: " << DBL_MIN << endl;
- //浮点数的精度
- cout << "浮点数的精度:" << endl;
- cout << "float: " <<FLT_DIG << endl;
- cout << "double: " << DBL_DIG << endl;
- //浮点数的二进制有效数字位数(尾数所占位数,包括符号位)
- cout << "浮点数的二进制有效数字位数(尾数所占位数,包括符号位):" << endl;
- cout << "float: " <<FLT_MANT_DIG << endl;
- cout << "double: " << DBL_MANT_DIG << endl;
- //二进制浮点数的指数最大值
- cout << "二进制浮点数的指数最大值 :" << endl;
- cout << "float: " << FLT_MAX_EXP << endl;
- cout << "double: " << DBL_MAX_EXP << endl;
- //二进制浮点数的指数最小值
- cout << "二进制浮点数的指数最小值:" << endl;
- cout << "float: " << FLT_MIN_EXP << endl;
- cout << "double: " << DBL_MIN_EXP << endl;
- //十进制浮点数的指数最大值
- cout << "十进制浮点数的指数最大值:" << endl;
- cout << "float: " << FLT_MAX_10_EXP << endl;
- cout << "double: " << DBL_MAX_10_EXP << endl;
- //十进制浮点数的指数最小值
- cout << "十进制浮点数的指数最小值:" << endl;
- cout << "float: " << FLT_MIN_10_EXP << endl;
- cout << "double: " << DBL_MIN_10_EXP << endl;
- system("pause");
- return 0;
- }
运行结果
使用头文件cfloat中的符号常量获知浮点类型数据的表数范围---gyy整理的更多相关文章
- 使用头文件climits中的符号常量获知整型数据的表数范围---gyy整理
在头文件climits(limits.h)以宏定义的方式定义了各种符号常量来表示各种整型类型表示数的范围,如int的最大最小值,long的最大最小值等. 符号常量 表示 CHAR_BIT char 的 ...
- Windows Pe 第三章 PE头文件(中)
这一章的上半部分大体介绍了下PE文件头,下半部分是详细介绍里面的内容,这一章一定要多读几遍,好好记记基础概念和知识,方便之后的学习. 简单回忆一下: 3.4 PE文件头部解析 3.4.1 DOS M ...
- Delphi 制作自定义数据感知控件并装入包(dpk文件)中(与DBText类似的数据感知控件)
一.基础知识简介: 1.包的命名介绍: 包的命名没有规则,但是建议遵守包的命名约定:包的命名与包的版本相关,包的名称前面几个字符通常表示作者或公司名,也可以是控件的一个描述词,后面紧跟的Std表示运行 ...
- Excel如何快速统计一列中相同数值出现的个数--数据透视表
excel如何快速统计一列中相同数值出现的个数_百度经验 --这里介绍了两种解决方式,用第一种https://jingyan.baidu.com/article/9113f81b2c16822b321 ...
- 头文件algorithm中的常用函数
非修改性序列操作(12个) 循环 对序列中的每个元素执行某操作 for_each() 查找 在序列中找出某个值的第一次出现的位置 fin ...
- 【C++常用函数】头文件<algorithm>中的常用函数(绝对值,交换,比较)
swap(a,b) 用于交换a,b两个变量的值: max(a,b) 返回a,b中的最大值: min(a,b) 返回a,b中的最小值: abs(x) 返回x的绝对值,x必须是整数:
- VS2010中如果忘记函数所在的头文件或者忘记函数的输入输出参数类型怎么办?
先随便找一个熟悉的函数,右击-转到定义,然后写出目标函数,右击-转到定义
- 头文件<cmath>中常用函数
<cmath>里面有很多数学函数,下面说一下常用的一些函数吧:直接把函数原型给了出来,用的时候注意参数 先说一下,c++自身是没有四舍五入函数round()的,若果你要用到的话,可以自己写 ...
- 字符函数库 - cctype 和 climits 中的符号常量
一. C++从C语言中继承一个与字符相关的.非常方便的函数软件包,他可以简化诸如确定字符是否为大写字母‘数字.标点符号等工作,这些函数的原型在头文件cctype(老式的为ctype.h)中定义的.例如 ...
随机推荐
- Amoeba相关产品及其介绍
Amoeba for MySQL Amoeba for MySQL致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的时候充当query 路由功能,专注 分布式数据库 ...
- 公交CPU卡原理
现在的公交卡已经开始逐步的采用IC卡(CPU卡?什么东东?),而且在国家交通部的推动下,开始了全国范围内的互联互通.以后,手里只用拿着一张卡,就可以走遍全国,而且如果支持在线充值的话,基本上就不用在车 ...
- [Guava学习笔记]Collections: 不可变集合, 新集合类型
我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3843386.html,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体验 ...
- 《JSON必知必会》
每天上下班在地铁上很适合看这种书,入门级.难点不多.简约不失严谨. 自从全面转向ASP.NET MVC,现在基本上每天都和JSON打交道,效率.习惯.速度都要掌握. 这本书读起来很快,所以读完也蛮有成 ...
- Poj 3030 Nasty Hacks
1.Link: http://poj.org/problem?id=3030 2.Content: Nasty Hacks Time Limit: 1000MS Memory Limit: 655 ...
- 3dmax详细讲解全套攻略在线视频教程
课程目录 试学课 课时11MAX2012学习软件指导 试学课 课时22MAX2012界面介绍 试学课 课时33MAX2012工作准备设置 试学课 课时44长方体的创建 试学课 课时55圆锥体的创建 试 ...
- Java数字格式化输出时前面补0
Java数字格式化输出时前面补0 星期日 2014年11月30日| 分类: Java /** * 里数字转字符串前面自动补0的实现. * */ public class TestString ...
- myeclipse 8.5 破解
步骤: (1)新建一个java project项目 (2)在src目录下新建一个名为MyEclipseGen的Java文件(MyEclipseGen.java) (3)MyEclipseGen.jav ...
- [DevExpress]ChartControl之基准线示例
关键代码: /// <summary> /// 创建基准线ConstantLine /// </summary> /// <param name="chart& ...
- Node.js Cannot find Module xxx 的问题
不知道为什么第一天Node.js干的挺顺利的,回公司后就干的一点都不顺利,主要原因还是公司的网络的问题,使用的受限制的代理,不能直接使用NPM从远程下载模块,唉. node.js的模块加载顺序首先是从 ...