isnan
, , _isnan
_isnanf
부동 소수점 값이 NaN("숫자가 아님")인지 테스트합니다.
구문
int isnan(
/* floating-point */ x
); /* C-only macro */
int _isnan(
double x
);
int _isnanf(
float x
); /* x64 only */
template <class T>
bool isnan(
T x
) throw(); /* C++ only */
매개 변수
x
테스트할 부동 소수점 값입니다.
반환 값
C에서 매크로와 함수는 _isnan
인수 x
가 NaN이면 0이 아닌 값을 반환하고_isnanf
, isnan
그렇지 않으면 0을 반환합니다.
C++에서는 인수가 isnan
NaN이면 템플릿 함수가 반환 true
되고, 그렇지 않으면 반환됩니다false
.x
설명
NaN 값은 자체 또는 다른 NaN 값과 같지 않으므로 이를 검색하려면 이러한 함수 또는 매크로 중 하나를 사용해야 합니다. 지정된 형식에 대해 부동 소수점 연산의 결과를 IEEE-754 부동 소수점 형식으로 나타낼 수 없는 경우 NaN이 생성됩니다. 출력에 대해 NaN을 나타내는 방법에 대한 자세한 내용은 다음을 참조하세요 printf
.
C++로 컴파일하면 매크로가 isnan
정의되지 않고 isnan
템플릿 함수가 대신 정의됩니다. 매크로와 동일한 방식으로 동작하지만 정수 대신 형식 bool
값을 반환합니다.
_isnan
및 _isnanf
함수는 Microsoft 전용입니다. _isnanf
함수는 x64용으로 컴파일된 경우에만 사용할 수 있습니다.
요구 사항
루틴에서 반환된 값 | 필수 헤더(C) | 필수 헤더(C++) |
---|---|---|
isnan , _isnanf |
<math.h> | <math.h> 또는 <cmath> |
_isnan |
<float.h> | <float.h> 또는 <cfloat> |
호환성에 대한 자세한 내용은 호환성을 참조하세요.
참고 항목
수학 및 부동 소수점 지원
fpclassify
_fpclass
, _fpclassf
isfinite
, , _finite
_finitef
isinf
isnormal