©
This document uses PHP Chinese website manual Release
在头文件<stdlib.h>中定义 | ||
---|---|---|
#define INFINITY /*implementation defined*/ | (since C99) |
如果实现支持浮点无穷大,则宏INFINITY
将扩展为float
求值为正或无符号无穷大的类型的常量表达式。
如果实现不支持浮点无穷大,宏INFINITY
将扩展为一个肯定的值,保证float
在编译时溢出,并且使用此宏会生成编译器警告。
用于打印无穷大的样式是实现定义的。
显示样式用于打印无限和IEEE格式。
#include <stdio.h>#include <math.h>#include <stdint.h>#include <inttypes.h>#include <string.h> int main(void){ double f = INFINITY; uint64_t fn; memcpy(&fn, &f, sizeof f); printf("INFINITY: %f %" PRIx64 "\n", f, fn);}
可能的输出:
INFINITY: inf 7ff0000000000000
C11标准(ISO / IEC 9899:2011):
7.12 / 4 INFINITY(p:231-232)
C99标准(ISO / IEC 9899:1999):
7.12 / 4 INFINITY(p:212-213)