1     // 一个浮点数是否有效,首先要看其是否是一个数字(是:_isnan为0),其次还要看其没有超出表示范围(是:_finite为1)
 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


补:C++中是
#include <math.h>
isnan
isfinite

 

相关文章:

  • 2022-12-23
  • 2021-09-21
  • 2022-12-23
  • 2021-08-17
  • 2021-06-09
  • 2021-12-01
  • 2022-12-23
猜你喜欢
  • 2021-12-06
  • 2021-12-27
  • 2022-12-23
  • 2022-12-23
  • 1970-01-01
  • 2019-07-27
  • 2022-03-01
相关资源
相似解决方案