使用头文件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型十进制浮点数的最大指数

  1. #include <iostream>
  2. #include <cfloat>
  3. using namespace std;
  4. int main()
  5. {
  6. cout << "Size:" << endl;
  7. cout << "float is     "   << sizeof (float)     << "bytes." << endl;
  8. cout << "double is   "   << sizeof (double)   << "bytes." << endl;
  9. cout << "long double is    "   << sizeof (long double)    << "bytes." << endl << endl;
  10. cout << "Bits per byte = " << CHAR_BIT << endl << endl;
  11. cout << "Maximum values:" << endl;
  12. cout << "float:           "   << FLT_MAX << endl;
  13. cout << "double:         "   << DBL_MAX << endl;
  14. cout << "Minimum values:" << endl;
  15. cout << "float:           "   << FLT_MIN << endl;
  16. cout << "double:         "   << DBL_MIN << endl;
  17. system("pause");
  18. return 0;
  19. }

运行结果


 

  1. #include <iostream>
  2. #include <cfloat>
  3. using namespace std;
  4. int main()
  5. {
  6. //浮点数在内存中的存储大小(字节)
  7. cout << "浮点数在内存中的存储大小(字节):" << endl;
  8. cout << "float is     "   << sizeof (float)     << "bytes." << endl;
  9. cout << "double is   "   << sizeof (double)   << "bytes." << endl;
  10. cout << "long double is    "   << sizeof (long double)    << "bytes." << endl << endl;
  11. cout << "Bits per byte = " << CHAR_BIT << endl << endl;
  12. //浮点数的最大值
  13. cout << "浮点数的最大值:" << endl;
  14. cout << "float:           "   << FLT_MAX << endl;
  15. cout << "double:         "   << DBL_MAX << endl;
  16. //浮点数的最小值
  17. cout << "浮点数的最小值:" << endl;
  18. cout << "float:           "   << FLT_MIN << endl;
  19. cout << "double:         "   << DBL_MIN << endl;
  20. //浮点数的精度
  21. cout << "浮点数的精度:" << endl;
  22. cout << "float:           "   <<FLT_DIG << endl;
  23. cout << "double:         "   << DBL_DIG << endl;
  24. //浮点数的二进制有效数字位数(尾数所占位数,包括符号位)
  25. cout << "浮点数的二进制有效数字位数(尾数所占位数,包括符号位):" << endl;
  26. cout << "float:           "   <<FLT_MANT_DIG << endl;
  27. cout << "double:         "   << DBL_MANT_DIG << endl;
  28. //二进制浮点数的指数最大值
  29. cout << "二进制浮点数的指数最大值 :" << endl;
  30. cout << "float:           "   << FLT_MAX_EXP << endl;
  31. cout << "double:         "   << DBL_MAX_EXP << endl;
  32. //二进制浮点数的指数最小值
  33. cout << "二进制浮点数的指数最小值:" << endl;
  34. cout << "float:           "   << FLT_MIN_EXP << endl;
  35. cout << "double:         "   << DBL_MIN_EXP << endl;
  36. //十进制浮点数的指数最大值
  37. cout << "十进制浮点数的指数最大值:" << endl;
  38. cout << "float:           "   << FLT_MAX_10_EXP << endl;
  39. cout << "double:         "   << DBL_MAX_10_EXP << endl;
  40. //十进制浮点数的指数最小值
  41. cout << "十进制浮点数的指数最小值:" << endl;
  42. cout << "float:           "   << FLT_MIN_10_EXP << endl;
  43. cout << "double:         "   << DBL_MIN_10_EXP << endl;
  44. system("pause");
  45. return 0;
  46. }

运行结果



 

使用头文件cfloat中的符号常量获知浮点类型数据的表数范围---gyy整理的更多相关文章

  1. 使用头文件climits中的符号常量获知整型数据的表数范围---gyy整理

    在头文件climits(limits.h)以宏定义的方式定义了各种符号常量来表示各种整型类型表示数的范围,如int的最大最小值,long的最大最小值等. 符号常量 表示 CHAR_BIT char 的 ...

  2. Windows Pe 第三章 PE头文件(中)

    这一章的上半部分大体介绍了下PE文件头,下半部分是详细介绍里面的内容,这一章一定要多读几遍,好好记记基础概念和知识,方便之后的学习. 简单回忆一下: 3.4  PE文件头部解析 3.4.1 DOS M ...

  3. Delphi 制作自定义数据感知控件并装入包(dpk文件)中(与DBText类似的数据感知控件)

    一.基础知识简介: 1.包的命名介绍: 包的命名没有规则,但是建议遵守包的命名约定:包的命名与包的版本相关,包的名称前面几个字符通常表示作者或公司名,也可以是控件的一个描述词,后面紧跟的Std表示运行 ...

  4. Excel如何快速统计一列中相同数值出现的个数--数据透视表

    excel如何快速统计一列中相同数值出现的个数_百度经验 --这里介绍了两种解决方式,用第一种https://jingyan.baidu.com/article/9113f81b2c16822b321 ...

  5. 头文件algorithm中的常用函数

    非修改性序列操作(12个) 循环         对序列中的每个元素执行某操作         for_each() 查找         在序列中找出某个值的第一次出现的位置         fin ...

  6. 【C++常用函数】头文件<algorithm>中的常用函数(绝对值,交换,比较)

    swap(a,b) 用于交换a,b两个变量的值: max(a,b) 返回a,b中的最大值: min(a,b) 返回a,b中的最小值: abs(x) 返回x的绝对值,x必须是整数:

  7. VS2010中如果忘记函数所在的头文件或者忘记函数的输入输出参数类型怎么办?

    先随便找一个熟悉的函数,右击-转到定义,然后写出目标函数,右击-转到定义

  8. 头文件<cmath>中常用函数

    <cmath>里面有很多数学函数,下面说一下常用的一些函数吧:直接把函数原型给了出来,用的时候注意参数 先说一下,c++自身是没有四舍五入函数round()的,若果你要用到的话,可以自己写 ...

  9. 字符函数库 - cctype 和 climits 中的符号常量

    一. C++从C语言中继承一个与字符相关的.非常方便的函数软件包,他可以简化诸如确定字符是否为大写字母‘数字.标点符号等工作,这些函数的原型在头文件cctype(老式的为ctype.h)中定义的.例如 ...

随机推荐

  1. [Bootstrap]全局样式(四)

    按钮 1.基本类.btn {display/padding/margin-bottom/font-size/border-radius/border} 作用于< a:role:button &g ...

  2. 关于JFinal拦截器的理解

    这是波总的亲自总结,记录一下: 1:拦截器可以用在两个层面,一个是"控制层",另一个是"业务层",其中"业务层"是一种狭义的说法,更加合理的 ...

  3. 查看mysql集群状态是否正常

    如何查看mysql集群状态是否正常: 进入mysql 输入show status like 'wsrep%': 查看cluster sizes 是否为3

  4. android app widget 创建调用周期

    1 ?Android widget 大小问题 2 ?RemoteViewService Android开发历程_15(AppWidget的使用) Appwidget就是手机应用中常常放在桌面(即hom ...

  5. 【Qt】关于Qt【转】

    什么是Qt Qt是一个针对桌面.嵌入式.移动设备的一个跨平台的应用程序开发框架,支持的平台包括Linux.OS X.Windows.VxWorks.QNX.Android.iOS.BlackBerry ...

  6. AngularJS(7)-表格

    ng-repeat 指令可以完美的显示表格. <!DOCTYPE html> <html lang="en"> <head> <meta ...

  7. Android中的时间日期选择器

    1.layout <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xml ...

  8. Win7 64bit 成功安装ArcView3.X

    本人参考 链接 已在Win7 64Bit 笔记本上成功安装ArcView3.3,于是记录以下心得。 Win7 64Bit安装不了ArcView3.X的原因在于: 1,ArcView3.X属于16Bit ...

  9. 退出telnet

    telnet时,很多时候通过ctrl+c依然无法退出.可以采取下面的方式进行退出:  ctrl+],然后进入 telnet>,然后输入q或quit即可.

  10. 灵光乍现,lua数据绑定

    MVVM的核心就是数据驱动,数据驱动的核心就是数据绑定. 我一直在思考,如何使用lua做一个数据绑定的功能,仔细思考一下,数据绑定需要做到的功能很简单,就是当一个数据改变时,能主动回调一个或多个函数就 ...