Concatenation with character.
type(string) :: astring
type(string) :: yetanotherstring
character(len=:), allocatable :: acharacter
logical :: test_passed(1)
astring = 'Hello '
acharacter = 'World!'
yetanotherstring = astring.cat.acharacter
test_passed(1) = yetanotherstring%chars()=='Hello World!'
print '(L1)', all(test_passed)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(string), | intent(in) | :: | lhs |
Left hand side. |
||
character(kind=CK, len=*), | intent(in) | :: | rhs |
Right hand side. |
Concatenated string.
elemental function string_concat_character_string(lhs, rhs) result(concat) !< Concatenation with character. !< !<```fortran !< type(string) :: astring !< type(string) :: yetanotherstring !< character(len=:), allocatable :: acharacter !< logical :: test_passed(1) !< astring = 'Hello ' !< acharacter = 'World!' !< yetanotherstring = astring.cat.acharacter !< test_passed(1) = yetanotherstring%chars()=='Hello World!' !< print '(L1)', all(test_passed) !<``` !=> T <<< class(string), intent(in) :: lhs !< Left hand side. character(kind=CK, len=*), intent(in) :: rhs !< Right hand side. type(string) :: concat !< Concatenated string. if (allocated(lhs%raw)) then concat%raw = lhs%raw//rhs else concat%raw = rhs endif endfunction string_concat_character_string