f90 allows the following nonstandard type declaration forms in declaration statements, function statements, and IMPLICIT statements.
Table C-3 Size Notation for Numeric Data Types
Nonstandard |
Declarator |
Short Form |
Meaning |
---|---|---|---|
INTEGER*1 | INTEGER(KIND=1) | INTEGER(1) |
One-byte signed integers |
INTEGER*2 | INTEGER(KIND=2) | INTEGER(2) |
Two-byte signed integers |
INTEGER*4 | INTEGER(KIND=4) | INTEGER(4) |
Four-byte signed integers |
LOGICAL*1 | LOGICAL(KIND=1) | LOGICAL(1) |
One-byte logicals |
LOGICAL*2 | LOGICAL(KIND=2) | LOGICAL(2) |
Two-byte logicals |
LOGICAL*4 | LOGICAL(KIND=4) | LOGICAL(4) |
Four-byte logicals |
REAL*4 | REAL(KIND=4) | REAL(4) |
IEEE single-precision floating-point (Four-byte) |
REAL*8 | REAL(KIND=8) | REAL(8) |
IEEE double-precision floating-point (Eight-byte) |
COMPLEX*8 | COMPLEX(KIND=4) | COMPLEX(4) |
Single-precision complex (Four-bytes each part) |
COMPLEX*16 | COMPLEX(KIND=8) | COMPLEX(8) |
Double-precision complex (Eight-bytes each part) |
The form in column one is nonstandard Fortran 90, though in common use. The kind numbers in column two can vary by vendor.