gtool5 Fortran 90/95 Library 1.0.0-rc5
日本語
Loading...
Searching...
No Matches
Public Member Functions | List of all members
dc_string::tochar Interface Reference

Public Member Functions

character(token) function itoa_scalar (i)
 
character(string) function itoa_array (ibuf)
 
character(token) function rtoa_scalar (x)
 
character(string) function rtoa_array (rbuf)
 
character(token) function dtoa_scalar (d)
 
character(string) function dtoa_array (dbuf)
 
character(token) function ltoa_scalar (l)
 
character(string) function ltoa_array (lbuf)
 

Detailed Description

Definition at line 130 of file dc_string.f90.

Member Function/Subroutine Documentation

◆ dtoa_array()

character(string) function dc_string::tochar::dtoa_array ( real(dp), dimension(:), intent(in)  dbuf)

Convert double precision real array to string

Elements are separated by ", ".

Parameters
[in]dbufDouble precision real array to convert
Returns
String representation

Definition at line 1036 of file dc_string.f90.

1037 real(DP), intent(in):: dbuf(:)
1038 integer:: i
1039 continue
1040 if (size(dbuf) <= 0) then
1041 result = ""
1042 return
1043 endif
1044 result = tochar(dbuf(1))
1045 do, i = 2, size(dbuf)
1046 result = trim(result) // ", " // trim(tochar(dbuf(i)))
1047 enddo

◆ dtoa_scalar()

character(token) function dc_string::tochar::dtoa_scalar ( real(dp), intent(in)  d)

Convert double precision real scalar to string

Parameters
[in]dDouble precision real value to convert
Returns
String representation

Definition at line 1002 of file dc_string.f90.

1003 real(DP), intent(in):: d
1004 character(len = 32):: buffer, expbuf
1005 integer:: ptr, eptr
1006 continue
1007 write(unit=buffer, fmt="(g32.24)") d
1008 eptr = scan(buffer, "eE", back=.true.)
1009 expbuf = ''
1010 if (eptr > 1) then
1011 expbuf = buffer(eptr: )
1012 buffer(eptr: ) = " "
1013 end if
1014 ptr = verify(buffer, " 0", back=.true.)
1015 if (ptr > 0) buffer(ptr+1: ) = " "
1016 if (eptr > 1) then
1017 buffer = buffer(1:len_trim(buffer)) // expbuf
1018 end if
1019 result = adjustl(buffer)

◆ itoa_array()

character(string) function dc_string::tochar::itoa_array ( integer, dimension(:), intent(in)  ibuf)

Convert integer array to string

Elements are separated by ", ".

Parameters
[in]ibufInteger array to convert
Returns
String representation

Definition at line 920 of file dc_string.f90.

921 integer, intent(in):: ibuf(:)
922 integer:: i
923 continue
924 if (size(ibuf) <= 0) then
925 result = ""
926 return
927 endif
928 result = tochar(ibuf(1))
929 do, i = 2, size(ibuf)
930 result = trim(result) // ", " // trim(tochar(ibuf(i)))
931 enddo

◆ itoa_scalar()

character(token) function dc_string::tochar::itoa_scalar ( integer, intent(in)  i)

Convert integer scalar to string

Parameters
[in]iInteger value to convert
Returns
String representation

Definition at line 898 of file dc_string.f90.

899 integer, intent(in):: i
900 character(len = 32):: buffer
901 continue
902 write(unit=buffer, fmt="(i20)") i
903 result = adjustl(buffer)

◆ ltoa_array()

character(string) function dc_string::tochar::ltoa_array ( logical, dimension(:), intent(in)  lbuf)

Convert logical array to string

Elements are separated by ", ".

Parameters
[in]lbufLogical array to convert
Returns
String representation

Definition at line 1084 of file dc_string.f90.

1085 logical, intent(in):: lbuf(:)
1086 integer:: i
1087 continue
1088 if (size(lbuf) <= 0) then
1089 result = ""
1090 return
1091 endif
1092 result = tochar(lbuf(1))
1093 do, i = 2, size(lbuf)
1094 result = trim(result) // ", " // trim(tochar(lbuf(i)))
1095 enddo

◆ ltoa_scalar()

character(token) function dc_string::tochar::ltoa_scalar ( logical, intent(in)  l)

Convert logical scalar to string

Parameters
[in]lLogical value to convert
Returns
".true." or ".false."

Definition at line 1060 of file dc_string.f90.

1061 logical, intent(in):: l
1062 continue
1063 if (l) then
1064 result = ".true."
1065 else
1066 result = ".false."
1067 end if

◆ rtoa_array()

character(string) function dc_string::tochar::rtoa_array ( real(sp), dimension(:), intent(in)  rbuf)

Convert single precision real array to string

Elements are separated by ", ".

Parameters
[in]rbufSingle precision real array to convert
Returns
String representation

Definition at line 978 of file dc_string.f90.

979 real(SP), intent(in):: rbuf(:)
980 integer:: i
981 continue
982 if (size(rbuf) <= 0) then
983 result = ""
984 return
985 endif
986 result = tochar(rbuf(1))
987 do, i = 2, size(rbuf)
988 result = trim(result) // ", " // trim(tochar(rbuf(i)))
989 enddo

◆ rtoa_scalar()

character(token) function dc_string::tochar::rtoa_scalar ( real(sp), intent(in)  x)

Convert single precision real scalar to string

Parameters
[in]xSingle precision real value to convert
Returns
String representation

Definition at line 944 of file dc_string.f90.

945 real(SP), intent(in):: x
946 character(len = 16):: buffer, expbuf
947 integer:: ptr, eptr
948 continue
949 write(unit=buffer, fmt="(g16.8)") x
950 eptr = scan(buffer, "eE", back=.true.)
951 expbuf = ''
952 if (eptr > 1) then
953 expbuf = buffer(eptr: )
954 buffer(eptr: ) = " "
955 end if
956 ptr = verify(buffer, " 0", back=.true.)
957 if (ptr > 0) buffer(ptr+1: ) = " "
958 if (eptr > 1) then
959 buffer = buffer(1:len_trim(buffer)) // expbuf
960 end if
961 result = adjustl(buffer)

The documentation for this interface was generated from the following file: