C语言中的isnan函数用于判断一个浮点数是否为NaN(Not a Number)。NaN是一种特殊的浮点数,表示一个无效的或者未定义的结果。
isnan函数的用法如下:
#include <math.h>
int isnan(double x);
int isnanf(float x);
int isnanl(long double x);
这三个函数分别用于判断双精度浮点数、单精度浮点数和长双精度浮点数是否为NaN。这些函数返回非零值(真)表示参数是NaN,返回零值(假)表示参数不是NaN。
示例:
#include <stdio.h>
#include <math.h>
int main() {
double x = 0.0 / 0.0; // 生成一个NaN
if (isnan(x)) {
printf("x is NaN\n");
}
return 0;
}
输出:
x is NaN
在C99标准中,isnan函数被定义在math.h头文件中。在使用isnan函数之前,需要包含该头文件。