扣扣技术交流群:460189483
注意:nan是无序的(unordered),无法对其进行逻辑运算。它不大于、小于或等于任何数(包括它自己),将<,>,<=,和>=作用于nan产生一个exception。得到nan时就查看是否有非法操作,如果表达式中含有nan,那么表达式的结果为nan。
NAN的判断
在math.h头文件中有判断是否为nan的函数,isnan(x) 如果是nan返回1,如果不是返回0
#include <math.h>
typedef union{
float x;
u8 buf[4];
}nan_t;
int main()
{
nan_t tmp;
tmp.buf[0] = 255;
tmp.buf[1] = 255;
tmp.buf[2] = 255;
tmp.buf[3] = 255;
if(isnan(tmp.x))
{
printf("this is nan");
}
}