?
本文檔使用 php中文網(wǎng)手冊 發(fā)布
在頭文件<math.h>中定義 | ||
---|---|---|
#define NAN /*implementation defined*/ | (since C99) |
宏NAN
擴展為類型的常量表達式,float
其值為安靜的非數(shù)值(QNaN)值。如果實現(xiàn)不支持QNaNs,則不定義此宏常量。
用于打印NaN的樣式是實現(xiàn)定義的。
有許多不同的NaN值,由它們的有效載荷和它們的符號位來區(qū)分。由宏生成的有效載荷的內容和NaN的符號位NAN
是實現(xiàn)定義的。
顯示用于打印NaN和IEEE格式的樣式。
#include <stdio.h>#include <math.h>#include <stdint.h>#include <inttypes.h>#include <string.h> int main(void){ double f = NAN; uint64_t fn; memcpy(&fn, &f, sizeof f); printf("NAN: %f %" PRIx64 "\n", f, fn);}
可能的輸出:
NAN: nan 7ff8000000000000
C11標準(ISO / IEC 9899:2011):
7.12 / 5 NAN(p:232)
F.10 / 11/13 IN(p:518)
C99標準(ISO / IEC 9899:1999):
7.12 / 5 NAN(p:213)
F.9 / 11/13 IN(p:455)