## 9.3.70 INT (A [, KIND])

Description: | Converts a value to integer type.
Class: | Elemental function; Generic
Arguments: | A | Must be of type integer, real, or complex.
| KIND (opt) | Must be a scalar integer initialization expression.
Results: | The result is of type integer. If KIND is present, the kind parameter of the result is that specified by KIND; otherwise, the kind parameter of the result is shown in the following table. If the processor cannot represent the result value in the kind of the result, the result is undefined. Functions that cause conversion of one data type to another type have the same affect as the implied conversion in assignment statements. The result value depends on the type and absolute value of A, as follows: If A is of type integer, INT (A) = A. If A is of type real and |A| < 1, INT (A) has the value zero. If A is of type real and |A| >= 1, INT (A) is the integer whose magnitude is the largest integer that does not exceed the magnitude of A and whose sign is the same as the sign of A. If A is of type complex, INT (A) = A is the value obtained by applying the preceding rules (for a real argument) to the real part of A. The setting of compiler options specifying integer size can affect this function.

Specific Name1 | Argument Type | Result Type
--- | --- | ---
| INTEGER(1), INTEGER(2), INTEGER(4) | INTEGER(4)
| INTEGER(1), INTEGER(2), INTEGER(4), INTEGER(8) | INTEGER(8)
IIFIX 2 | REAL(4) | INTEGER(2)
IINT | REAL(4) | INTEGER(2)
IFIX 3, 4 | REAL(4) | INTEGER(4)
JFIX | INTEGER(1), INTEGER(2), INTEGER(4), INTEGER(8), REAL(4), REAL(8), REAL(16) COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(4)
INT 5, 6 | REAL(4) | INTEGER(4)
KIFIX | REAL(4) | INTEGER(8)
KINT | REAL(4) | INTEGER(8)
IIDINT | REAL(8) | INTEGER(2)
IDINT 6, 7 | REAL(8) | INTEGER(4)
KIDINT | REAL(8) | INTEGER(8)
IIQINT | REAL(16) | INTEGER(2)
IQINT 6, 8 | REAL(16) | INTEGER(4)
KIQINT | REAL(16) | INTEGER(8)
| COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(2)
| COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(4)
| COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(8)
INT1 | INTEGER(1), INTEGER(2), INTEGER(4), INTEGER(8), REAL(4), REAL(8), REAL(16), COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(1)
INT2 | INTEGER(1), INTEGER(2), INTEGER(4), INTEGER(8), REAL(4), REAL(8), REAL(16), COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(2)
INT4 | INTEGER(1), INTEGER(2), INTEGER(4), INTEGER(8), REAL(4), REAL(8), REAL(16), COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(4)
INT8 | INTEGER(1), INTEGER(2), INTEGER(4), INTEGER(8), REAL(4), REAL(8), REAL(16), COMPLEX(4), COMPLEX(8), COMPLEX(16) | INTEGER(8)
1 These specific functions cannot be passed as actual arguments. 2 This function can also be specified as HFIX. 3 For compatibility with older versions of Fortran, IFIX can also be specified as a generic function. 4 The setting of compiler options specifying real size or integer size can affect IFIX. 5 Or JINT. 6 The setting of compiler options specifying real size can affect INT, IDINT, and IQINT. 7 Or JIDINT. For compatibility with older versions of Fortran, IDINT can also be specified as a generic function. 8 Or JIQINT. For compatibility with older versions of Fortran, IQINT can also be specified as a generic function.

Examples

INT (-4.2) has the value -4.

INT (7.8) has the value 7.

Previous Page Next Page Table of Contents