3 /* 7.7 Characteristics of floating types <float.h>
5 This file is part of the Public Domain C Library (PDCLib).
6 Permission is granted to use, modify, and / or redistribute at will.
9 #ifndef _PDCLIB_FLOAT_H
10 #define _PDCLIB_FLOAT_H _PDCLIB_FLOAT_H
12 #ifndef _PDCLIB_CONFIG_H
13 #define _PDCLIB_CONFIG_H _PDCLIB_CONFIG_H
14 #include <_PDCLIB_config.h>
17 #define FLT_ROUNDS _PDCLIB_FLT_ROUNDS
18 #define FLT_EVAL_METHOD _PDCLIB_FLT_EVAL_METHOD
19 #define DECIMAL_DIG _PDCLIB_DECIMAL_DIG
21 /* Radix of exponent representation */
22 #define FLT_RADIX __FLT_RADIX__
23 /* Number of base-FLT_RADIX digits in the significand of a float */
24 #define FLT_MANT_DIG __FLT_MANT_DIG__
25 /* Number of decimal digits of precision in a float */
26 #define FLT_DIG __FLT_DIG__
27 /* Difference between 1.0 and the minimum float greater than 1.0 */
28 #define FLT_EPSILON __FLT_EPSILON__
29 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised float */
30 #define FLT_MIN_EXP __FLT_MIN_EXP__
31 /* Minimum normalised float */
32 #define FLT_MIN __FLT_MIN__
33 /* Minimum int x such that 10**x is a normalised float */
34 #define FLT_MIN_10_EXP __FLT_MIN_10_EXP__
35 /* Maximum int x such that FLT_RADIX**(x-1) is a representable float */
36 #define FLT_MAX_EXP __FLT_MAX_EXP__
38 #define FLT_MAX __FLT_MAX__
39 /* Maximum int x such that 10**x is a representable float */
40 #define FLT_MAX_10_EXP __FLT_MAX_10_EXP__
42 /* Number of base-FLT_RADIX digits in the significand of a double */
43 #define DBL_MANT_DIG __DBL_MANT_DIG__
44 /* Number of decimal digits of precision in a double */
45 #define DBL_DIG __DBL_DIG__
46 /* Difference between 1.0 and the minimum double greater than 1.0 */
47 #define DBL_EPSILON __DBL_EPSILON__
48 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised double */
49 #define DBL_MIN_EXP __DBL_MIN_EXP__
50 /* Minimum normalised double */
51 #define DBL_MIN __DBL_MIN__
52 /* Minimum int x such that 10**x is a normalised double */
53 #define DBL_MIN_10_EXP __DBL_MIN_10_EXP__
54 /* Maximum int x such that FLT_RADIX**(x-1) is a representable double */
55 #define DBL_MAX_EXP __DBL_MAX_EXP__
57 #define DBL_MAX __DBL_MAX__
58 /* Maximum int x such that 10**x is a representable double */
59 #define DBL_MAX_10_EXP __DBL_MAX_10_EXP__
61 /* Number of base-FLT_RADIX digits in the significand of a long double */
62 #define LDBL_MANT_DIG __LDBL_MANT_DIG__
63 /* Number of decimal digits of precision in a long double */
64 #define LDBL_DIG __LDBL_DIG__
65 /* Difference between 1.0 and the minimum long double greater than 1.0 */
66 #define LDBL_EPSILON __LDBL_EPSILON__
67 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised long double */
68 #define LDBL_MIN_EXP __LDBL_MIN_EXP__
69 /* Minimum normalised long double */
70 #define LDBL_MIN __LDBL_MIN__
71 /* Minimum int x such that 10**x is a normalised long double */
72 #define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__
73 /* Maximum int x such that FLT_RADIX**(x-1) is a representable long double */
74 #define LDBL_MAX_EXP __LDBL_MAX_EXP__
75 /* Maximum long double */
76 #define LDBL_MAX __LDBL_MAX__
77 /* Maximum int x such that 10**x is a representable long double */
78 #define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__