있는 번호 (NAN) 항목이 없습니다
Visual C++ 컴파일러는 IEEE와 호환 방식으로 비교 하지 번호 (NAN) 항목을 지원합니다.경우 x NAN입니다 및 y NAN 아닙니다.
(x != x) == true
(x == x) == false
(y > x) == false
(y < x) == false
테스트가 항상 반환 false NAN 순서: NAN [<, < =, >, > =] any_number은 false가 됩니다.
다음 코드는 부동 소수점 숫자를 Visual C++의 Nan 성공적으로 비교할 수 없습니다 방법을 보여 줍니다.
#include <math.h>
#include <stdio.h>
#include <float.h>
int main( void ) {
unsigned long nan[2]={0xffffffff, 0x7fffffff};
double g = *( double* )nan;
if ( g <= 3.0 )
printf( "g( %g ) <= 3.0\n", g );
else if ( g > 3.0)
printf( "g( %g ) > 3.0\n", g );
else
printf( "g( %g ) is NaN\n", g );
}