C99 | macro: isinf(x) |
C++11 | function:
bool isinf (float x); bool isinf (double x); bool isinf (long double x); |
C99 | 在C语言中,它被实现为一个返回int值的宏,x的类型应该是float, double或long double。 |
C++11 | 在c++中,它是通过对每个浮点类型的函数重载来实现的,每个类型返回一个bool值。 |
/* isinf example */ #include <stdio.h> /* printf */ #include <math.h> /* isinf, sqrt */ int main() { printf ("isinf(0.0) : %d\n",isinf(0.0)); printf ("isinf(1.0/0.0) : %d\n",isinf(1.0/0.0)); printf ("isinf(-1.0/0.0) : %d\n",isinf(-1.0/0.0)); printf ("isinf(sqrt(-1.0)): %d\n",isinf(sqrt(-1.0))); return 0; } |
isinf(0.0) : 0 isinf(1.0/0.0) : 1 isinf(-1.0/0.0) : 1 isinf(sqrt(-1.0): 0
isfinite | 是否有限值(宏) |
fpclassify | 分类浮点值(宏/函数 ) |
isnan | 是不是非数(宏/函数 ) |
isnormal | 是不是正常的(宏/函数 ) |