]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/fortran/doc/gfortran/intrinsic-procedures/selectedintkind.rst
sphinx: add missing trailing newline
[thirdparty/gcc.git] / gcc / fortran / doc / gfortran / intrinsic-procedures / selectedintkind.rst
1 ..
2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
5
6 .. index:: SELECTED_INT_KIND, integer kind, kind, integer
7
8 .. _selected_int_kind:
9
10 SELECTED_INT_KIND --- Choose integer kind
11 *****************************************
12
13 .. function:: SELECTED_INT_KIND(R)
14
15 ``SELECTED_INT_KIND(R)`` return the kind value of the smallest integer
16 type that can represent all values ranging from -10^R (exclusive)
17 to 10^R (exclusive). If there is no integer kind that accommodates
18 this range, ``SELECTED_INT_KIND`` returns -1.
19
20 :param R:
21 Shall be a scalar and of type ``INTEGER``.
22
23 Standard:
24 Fortran 90 and later
25
26 Class:
27 Transformational function
28
29 Syntax:
30 .. code-block:: fortran
31
32 RESULT = SELECTED_INT_KIND(R)
33
34 Example:
35 .. code-block:: fortran
36
37 program large_integers
38 integer,parameter :: k5 = selected_int_kind(5)
39 integer,parameter :: k15 = selected_int_kind(15)
40 integer(kind=k5) :: i5
41 integer(kind=k15) :: i15
42
43 print *, huge(i5), huge(i15)
44
45 ! The following inequalities are always true
46 print *, huge(i5) >= 10_k5**5-1
47 print *, huge(i15) >= 10_k15**15-1
48 end program large_integers