如何判断float值有效

Posted No Dream 为什么会存在,为何如此设计,不存在会如何

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何判断float值有效相关的知识,希望对你有一定的参考价值。

 1     // 一个浮点数是否有效,首先要看其是否是一个数字(_isnan为0),其次还要看其是否超出了表示范围(_finite为0)
 2     // 注意_finite是有限的意思
 3     #include <float.h>
 4     CString strOut;
 5     float f;
 6     int nan, finite;
 7     
 8     f = 3;
 9     nan= _isnan(f);// 0
10     finite = _finite(f);// 1
11 
12     unsigned int cc = 0xFF800000;
13     memcpy(&f, &cc, sizeof(f));
14     nan= _isnan(f);// 0
15     finite = _finite(f);// 0
16     strOut.Format("f=%f",f);//-1.#INF00
17 
18     unsigned int ccc = 0xFFFFFFFF;       
19     memcpy(&f, &ccc, sizeof(f));
20     nan= _isnan(f);// 1
21     finite = _finite(f);// 0
22     strOut.Format("f=%f",f);//-1.#QNAN0

 

以上是关于如何判断float值有效的主要内容,如果未能解决你的问题,请参考以下文章

如何有效地打开 30gb 的文件并处理其中的片段而不减慢速度?

如何将浮点矩阵作为 2D 纹理传递给片段着色器?

JavaScript笔试题(js高级代码片段)

JAVA 各种数值类型最大值和最小值 Int, short, char, long, float,&nbs

如何在OpenCV中使用双重类型的地图重新映射

float.valueof()自动截取有效位数