Page 11 - 6437
P. 11

Floating-Point Types
                          The following table provides the details of standard floating-point types with storage sizes
                   and value ranges and their precision:


                          Type     Storage size              Value range              Precision


                          float            4 byte            1.2E-38 to 3.4E+38       6 decimal places


                          double           8 byte            2.3E-308 to 1.7E+308     15 decimal places


                     long double           10 byte           3.4E-4932 to 1.1E+4932 19 decimal places



                          The header file float.h defines macros that allow you to use these values and other details
                   about the binary representation of real numbers in your programs. The following example prints
                   the storage space taken by a float type and its range values:



                 #include <stdio.h>

                 #include <float.h>


                 int main()
                 {

                    printf("Storage size for float : %d \n", sizeof(float));
                    printf("Minimum float positive value: %E\n", FLT_MIN );

                    printf("Maximum float positive value: %E\n", FLT_MAX );
                    printf("Precision value: %d\n", FLT_DIG );


                    return 0;


                            }
                          When you compile and execute the above program, it produces the following result on
                   Linux:


                 Storage size for float : 4
                 Minimum float positive value: 1.175494E-38

                 Maximum float positive value: 3.402823E+38
                 Precision value: 6
   6   7   8   9   10   11   12   13   14   15   16