DOUBLE PRECISION type specifier

Standard: F77 F90 F95 F2003 F2008 Example program



The blank between DOUBLE and PRECISION is optional.


DOUBLE PRECISION specifies that an entity is of type REAL and double precision kind. It is equivalent to REAL(KIND(0d0)). A double precision entity takes twice as much storage as a single precision entity.

The F90_KIND module contains named constants REAL32, REAL64 and REAL128 which are convenient for specifying Reals with a particular size. The standard intrinsic module ISO_FORTRAN_ENV also contains those constants.

The SELECTED_REAL_KIND intrinsic function can be used to select a real kind based on decimal precision and exponent range requirements. The IEEE_SELECTED_REAL_KIND function in the standard intrinsic module IEEE_ARITHMETIC can also be used to select an ISO/IEC/IEEE 60559 conformant real kind.


CHARACTER type, COMPLEX type, Component Definition statement, DBLE intrinsic function, IMPLICIT statement, INTEGER type, LOGICAL type, REAL type, SELECTED_REAL_KIND intrinsic function, Type Declaration statement