You copied the Doc URL to your clipboard.

Data types

Arm Fortran Compiler provides the following intrinsic data types:

Intrinsic data types

** Data Type**

Specified as

Size (bytes)

INTEGER

INTEGER
INTEGER*1
INTEGER([KIND=]1)
INTEGER*2
INTEGER([KIND=]2)
INTEGER*4
INTEGER([KIND=]4)
INTEGER*8
INTEGER([KIND=]8)
4
1
1
2
2
4
4
8
8

REAL

REAL
REAL*4
REAL([KIND=]4)
REAL*8
REAL([KIND=]8)
4
4
4
8
8

DOUBLE PRECISION

DOUBLE PRECISION (same as  REAL*8, no KIND parameter is permitted )

16

COMPLEX

COMPLEX
COMPLEX*8
COMPLEX([KIND=]4)
COMPLEX*16
COMPLEX([KIND=]8)
4
8
8
16
16

DOUBLE COMPLEX

DOUBLE COMPLEX (same as COMPLEX*8, no KIND parameter is permitted)

8

LOGICAL

LOGICAL
LOGICAL*1
LOGICAL([KIND=]1)
LOGICAL*2
LOGICAL([KIND=]2)
LOGICAL*4
LOGICAL([KIND=]4)
LOGICAL*8
LOGICAL([KIND=]8)
4
1
1
2
2
4
4
8
8

CHARACTER

CHARACTER
CHARACTER([KIND=]1)
1
1

BYTE

BYTE (same as INTEGER([KIND=]1))

1

Note

  • The default entries are the first entries for each intrinsic data type.

  • To determine the kind type parameter of a representation method, use the intrinsic function KIND.

For more portable programs, define a PARAMETER constant using the appropriate SELECTED_INT_KIND or SELECTED_REAL_KIND functions, as appropriate.

For example, this code defines a PARAMETER constant for an INTEGER kind that has 9 digits:

INTEGER, PARAMETER :: MY_INT_KIND = SELECTED_INT_KIND(9)
...
INTEGER(MY_INT_KIND) :: J
...
Was this page helpful? Yes No