C++ std::numeric_limits::max,min及lowest

  • std::numeric\_limits\::max(),min()及lowest()
  • 參考連結

std::numeric_limits<T>::max(),min()及lowest()

根據std::numeric_limits,如果T屬於浮點數,則:

  • std::numeric_limits<T>::max()回傳該型別的最大值
  • std::numeric_limits<T>::min()回傳該型別的"最小正數"
  • std::numeric_limits<T>::lowest()回傳該型別的最小值(為負數或0)。

如果T屬於整數,則minlowest會回傳一樣的值,皆為該型別的最小值(為負數或0)。

筆者寫了一段代碼: cpp-code-snippets/numeric_limits.cpp。 當中輸出了 intunsigned intfloatdoublelong double等5種型別的最大值,最小正數值及最小值,其運行結果為:

max, min, lowest for 5 different data types:
int:
2147483647
-2147483648
-2147483648unsigned int:
4294967295
0
0float:
3.40282e+38
1.17549e-38
-3.40282e+38double:
1.79769e+308
2.22507e-308
-1.79769e+308long double:
1.18973e+4932
3.3621e-4932
-1.18973e+4932

TensorRT/parsers/caffe/caffeWeightFactory/caffeWeightFactory.cppconvertInternal中:

template <typename INPUT, typename OUTPUT>
void* convertInternal(void** ptr, int64_t count, bool* mOK)
{//...if (/**/ > std::numeric_limits<OUTPUT>::max()|| /**/ < std::numeric_limits<OUTPUT>::lowest())
}

便用std::numeric_limits所提供的函數來判斷一個值是否落在OUTPUT型別的最小值和最大值之間。要注意的是,此處使用的是lowest而非min,來獲取OUTPUT型別的最小值。

參考連結

std::numeric_limits

cpp-code-snippets/numeric_limits.cpp

C++ std::numeric_limits<T>::max(),min()及lowest()相关推荐

  1. C++ std::numeric_limits

    一 简介 头文件<limits> template <class T> numeric_limits; Provides information about the prope ...

  2. C++/C++11中std::numeric_limits的使用

    在C/C++11中,std::numeric_limits为模板类,在库编译平台提供基础算术类型的极值等属性信息,取代传统C语言,所采用的预处理常数.比较常用的使用是对于给定的基础类型用来判断在当前系 ...

  3. c/c++ max/min 4种实现方法

    参考:https://blog.csdn.net/a_ran/article/details/74911031 1. 简单的宏实现 #define max(a,b) (((a) > (b)) ? ...

  4. Visial Studio 2019提示:namespace std 没有成员 max 的解决方法

    Visial Studio 2019提示:namespace "std" 没有成员 "max",而标准库在<algorithm>头文件中定义了两个模 ...

  5. E - Max Min(尺取(线性时间找包含两个数的区间有多少))

    E - Max Min (atcoder.jp) 我们有一个长度为N的数列A=(A1,A2,...,AN)和整数X和Y.求满足以下所有条件的整数对(L,R)的数目. -1<L<R≤N . ...

  6. MySQL查询输入三个数的和_mysql(三)(单表查询、select、where、聚合函数、count、sum、avg、MAX/MIN、分组查询、group by、having、limit)...

    单表查询 select 建个表 1.查询表中所有学生的信息 2.查询表中所有学生的姓名和对应的英语成绩 3.过滤表中重复数据 4.在所有学生分数上添加10分特长分 下面方式并没有改变底层的数据记录,这 ...

  7. Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略

    Database之SQLSever:SQL命令实现四则运算.desc降序.like模糊查询.distinct去重.MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略 ...

  8. 6.组函数(avg(),sum(),max(),min(),count())、多行函数,分组数据(group by,求各部门的平均工资),分组过滤(having和where),sql优化...

     1组函数 avg(),sum(),max(),min(),count()案例: selectavg(sal),sum(sal),max(sal),min(sal),count(sal) from ...

  9. Python 内建函数 max/min的高级用法

    max/min 函数 Python 中的 max/min函数是用来获取传入参数的最大值或最小值的,其运行机制都一样,所以这里主要描述 max 的运行机制以及使用方法. 最简单的用法,就是直接传入两个要 ...

  10. boost::multiprecision模块将 std::numeric_limits 用作 multiprecision.qbk 上的多精度文档片段的示例

    boost::multiprecision模块将 std::numeric_limits 用作 multiprecision.qbk 上的多精度文档片段的示例 实现功能 C++实现代码 实现功能 bo ...

最新文章

  1. 业余草 SpringCloud 教程 | 第一篇: 服务的注册与发现Eureka(Finchley版本)
  2. Ymodem协议学习笔记
  3. from torch._C import * ImportError: DLL load failed: 找不到指定的模块。
  4. SQL-SQLServer(926)
  5. 微博:吃饭砸锅的艺术
  6. java中注解的解析_全面解析Java中的注解与注释
  7. python变量自加一_Python个人练习项目 2-1
  8. MATLAB调用USB摄像头实现过程
  9. AFNetWorking 对汉字部分UTF-8编码
  10. BZOJ 1444 [JSOI2009]有趣的游戏 (Trie图/AC自动机+矩阵求逆)
  11. sqlite3 可视化工具 linux,【SQLite3下载】SQLite3可视化工具 v3 3.27.2 官方版-开心电玩...
  12. 用自己数据集训练Mask_RCNN代码
  13. 解决办法:C++编译中[-Wreorder]
  14. VCL组件DevExpress VCL v21.2 - PDF Viewer、图像列表编辑器升级
  15. Mybatis笔记(狂神)
  16. python设置代理_Python怎么设置代理
  17. 怎么快速缩小gif图大小?gif动图如何变小?
  18. 使用 Bud and Go 构建全栈应用程序
  19. Python 提取图片中的GPS信息
  20. jvm垃圾回收之垃圾收集器

热门文章

  1. c语言音阶数组,【项目6-任务7-小组14】蜂鸣器演奏简单乐曲及简易电子琴制作...
  2. 百家号怎么发送链接,发送自己的链接变成文字等解答
  3. 微信计步器怎么不计步_微信运动不计步数是怎么回事?
  4. 【概率论与数理统计】python实验
  5. 探秘 Containerd 容器中的 Shim 进程
  6. C++学习心得:引用的详解
  7. Win10 设置默认语言
  8. Oracle的 IT 世界观
  9. python写入文件没反应_Python write 函数写文件失败
  10. 渔夫与商人的故事:人的一生到底在追求什么