strz_I8P Function

private elemental function strz_I8P(n, nz_pad) result(str)

Arguments

Type IntentOptional Attributes Name
integer(kind=I8P), intent(in) :: n
integer(kind=I4P), intent(in), optional :: nz_pad

Return Value character(len=DI8P)


Called by

proc~~strz_i8p~~CalledByGraph proc~strz_i8p strz_I8P interface~strz strz interface~strz->proc~strz_i8p program~volatile_doctest~1011 volatile_doctest program~volatile_doctest~1011->interface~strz program~volatile_doctest~102 volatile_doctest program~volatile_doctest~102->interface~strz program~volatile_doctest~103 volatile_doctest program~volatile_doctest~103->interface~strz program~volatile_doctest~1049 volatile_doctest program~volatile_doctest~1049->interface~strz program~volatile_doctest~1063 volatile_doctest program~volatile_doctest~1063->interface~strz program~volatile_doctest~1083 volatile_doctest program~volatile_doctest~1083->interface~strz program~volatile_doctest~1094 volatile_doctest program~volatile_doctest~1094->interface~strz program~volatile_doctest~1102 volatile_doctest program~volatile_doctest~1102->interface~strz program~volatile_doctest~1105 volatile_doctest program~volatile_doctest~1105->interface~strz program~volatile_doctest~1115 volatile_doctest program~volatile_doctest~1115->interface~strz program~volatile_doctest~1133 volatile_doctest program~volatile_doctest~1133->interface~strz program~volatile_doctest~1151 volatile_doctest program~volatile_doctest~1151->interface~strz program~volatile_doctest~1184 volatile_doctest program~volatile_doctest~1184->interface~strz program~volatile_doctest~1193 volatile_doctest program~volatile_doctest~1193->interface~strz program~volatile_doctest~1202 volatile_doctest program~volatile_doctest~1202->interface~strz program~volatile_doctest~1305 volatile_doctest program~volatile_doctest~1305->interface~strz program~volatile_doctest~1319 volatile_doctest program~volatile_doctest~1319->interface~strz program~volatile_doctest~1340 volatile_doctest program~volatile_doctest~1340->interface~strz program~volatile_doctest~1377 volatile_doctest program~volatile_doctest~1377->interface~strz program~volatile_doctest~139 volatile_doctest program~volatile_doctest~139->interface~strz program~volatile_doctest~1390 volatile_doctest program~volatile_doctest~1390->interface~strz program~volatile_doctest~1404 volatile_doctest program~volatile_doctest~1404->interface~strz program~volatile_doctest~1405 volatile_doctest program~volatile_doctest~1405->interface~strz program~volatile_doctest~1426 volatile_doctest program~volatile_doctest~1426->interface~strz program~volatile_doctest~1458 volatile_doctest program~volatile_doctest~1458->interface~strz program~volatile_doctest~1608 volatile_doctest program~volatile_doctest~1608->interface~strz program~volatile_doctest~1688 volatile_doctest program~volatile_doctest~1688->interface~strz program~volatile_doctest~1714 volatile_doctest program~volatile_doctest~1714->interface~strz program~volatile_doctest~1781 volatile_doctest program~volatile_doctest~1781->interface~strz program~volatile_doctest~1811 volatile_doctest program~volatile_doctest~1811->interface~strz program~volatile_doctest~1871 volatile_doctest program~volatile_doctest~1871->interface~strz program~volatile_doctest~1877 volatile_doctest program~volatile_doctest~1877->interface~strz program~volatile_doctest~1881 volatile_doctest program~volatile_doctest~1881->interface~strz program~volatile_doctest~1920 volatile_doctest program~volatile_doctest~1920->interface~strz program~volatile_doctest~1933 volatile_doctest program~volatile_doctest~1933->interface~strz program~volatile_doctest~1942 volatile_doctest program~volatile_doctest~1942->interface~strz program~volatile_doctest~21 volatile_doctest program~volatile_doctest~21->interface~strz program~volatile_doctest~231 volatile_doctest program~volatile_doctest~231->interface~strz program~volatile_doctest~297 volatile_doctest program~volatile_doctest~297->interface~strz program~volatile_doctest~309 volatile_doctest program~volatile_doctest~309->interface~strz program~volatile_doctest~362 volatile_doctest program~volatile_doctest~362->interface~strz program~volatile_doctest~372 volatile_doctest program~volatile_doctest~372->interface~strz program~volatile_doctest~411 volatile_doctest program~volatile_doctest~411->interface~strz program~volatile_doctest~412 volatile_doctest program~volatile_doctest~412->interface~strz program~volatile_doctest~447 volatile_doctest program~volatile_doctest~447->interface~strz program~volatile_doctest~448 volatile_doctest program~volatile_doctest~448->interface~strz program~volatile_doctest~483 volatile_doctest program~volatile_doctest~483->interface~strz program~volatile_doctest~632 volatile_doctest program~volatile_doctest~632->interface~strz program~volatile_doctest~66 volatile_doctest program~volatile_doctest~66->interface~strz program~volatile_doctest~859 volatile_doctest program~volatile_doctest~859->interface~strz program~volatile_doctest~896 volatile_doctest program~volatile_doctest~896->interface~strz program~volatile_doctest~928 volatile_doctest program~volatile_doctest~928->interface~strz program~volatile_doctest~936 volatile_doctest program~volatile_doctest~936->interface~strz program~volatile_doctest~951 volatile_doctest program~volatile_doctest~951->interface~strz program~volatile_doctest~966 volatile_doctest program~volatile_doctest~966->interface~strz program~volatile_doctest~999 volatile_doctest program~volatile_doctest~999->interface~strz

Source Code

   elemental function strz_I8P(n, nz_pad) result(str)
   !< Converting integer to string, prefixing with the right number of zeros.
   !<
   !<```fortran
   !< use penf
   !< print "(A)", strz(n=1_I8P)
   !<```
   !=> 0000000000000000001 <<<
   !<
   !<```fortran
   !< use penf
   !< print "(A)", strz(n=1_I8P, nz_pad=5)
   !<```
   !=> 00001 <<<
   integer(I8P), intent(in)           :: n      !< Integer to be converted.
   integer(I4P), intent(in), optional :: nz_pad !< Number of zeros padding.
   character(DI8P)                    :: str    !< Returned string containing input number plus padding zeros.

   write(str,FI8PZP) n                              ! Casting of n to string.
   str=str(2:)                                      ! Leaving out the sign.
   if (present(nz_pad)) str=str(DI8P-nz_pad:DI8P-1) ! Leaving out the extra zeros padding
   endfunction strz_I8P