SPACING (The GNU Fortran Compiler)

### 8.266 `SPACING` — Smallest distance between two numbers of a given type ¶

Synopsis:

  `RESULT = SPACING(X)`

Description:

  Determines the distance between the argument X and the nearest adjacent number of the same type.

Class:

  Elemental function

Arguments:

  X | Shall be of type `REAL`.

Return value:

  The result is of the same type as the input argument X.

Example:

      PROGRAM test_spacing
        INTEGER, PARAMETER :: SGL = SELECTED_REAL_KIND(p=6, r=37)
        INTEGER, PARAMETER :: DBL = SELECTED_REAL_KIND(p=13, r=200)

        WRITE(*,*) spacing(1.0_SGL)      ! "1.1920929E-07"          on i686
        WRITE(*,*) spacing(1.0_DBL)      ! "2.220446049250313E-016" on i686
      END PROGRAM

Standard:

  Fortran 90 and later

See also:

  `RRSPACING` — Reciprocal of the relative spacing