Share via


数値以外の (NAN) の項目

Visual C++ コンパイラは正の (NAN) 対応する数字ではなく項目の比較をサポートします。nan xy ある場合 をにします :

  • ! (xx== true= )

  • (x == ) x== False

  • (x)) > == False

  • (x)) < == False

nan 命令のテストでは常に false が返されます : [nan <<=>>=] [入力]any_numberfalse です。

次のコードはVisual C++ の NANs に浮動小数点数に正常に比較できないことを示しています :

#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 );
}

参照

関連項目

構文の規則