s_infconst.c
来自「Newlib 嵌入式 C库 标准实现代码」· C语言 代码 · 共 41 行
C
41 行
/* Infinity as a constant value. This is used for HUGE_VAL. * Added by Cygnus Support. */#include <float.h>#include "fdlibm.h"/* Float version of infinity. */const union __fmath __infinityf[1] = {{{0x7f800000}}};/* Double version of infinity. */#ifndef _DOUBLE_IS_32BITS #ifdef __IEEE_BIG_ENDIAN const union __dmath __infinity[1] = {{{0x7ff00000, 0}}}; #else const union __dmath __infinity[1] = {{{0, 0x7ff00000}}}; #endif#else /* defined (_DOUBLE_IS_32BITS) */ const union __dmath __infinity[1] = {{{0x7f800000, 0}}};#endif /* defined (_DOUBLE_IS_32BITS) *//* Long double version of infinity. */#ifdef __IEEE_BIG_ENDIAN #if LDBL_MANT_DIG == 24 const union __ldmath __infinityld[1] = {{{0x7f800000, 0, 0, 0}}}; #elif LDBL_MANT_DIG == 53 const union __ldmath __infinityld[1] = {{{0x7ff00000, 0, 0, 0}}}; #else const union __ldmath __infinityld[1] = {{{0x7fff0000, 0, 0, 0}}}; #endif /* LDBL_MANT_DIG size */#else /* __IEEE_LITTLE_ENDIAN */ #if LDBL_MANT_DIG == 24 const union __ldmath __infinityld[1] = {{{0x7f800000, 0, 0, 0}}}; #elif LDBL_MANT_DIG == 53 const union __ldmath __infinityld[1] = {{{0, 0x7ff00000, 0, 0}}}; #else const union __ldmath __infinityld[1] = {{{0, 0x80000000, 0x00007fff, 0}}}; #endif /* LDBL_MANT_DIG size */#endif /* __IEEE_LITTLE_ENDIAN */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?