fstring Function

public function fstring(string) result(res)

Uses

  • proc~~fstring~~UsesGraph proc~fstring fstring iso_c_binding iso_c_binding proc~fstring->iso_c_binding

@brief This function return fortran allocatable string @author Igor S. Gerasimov @date April, 2022 --Initial release-- @param string - (in) C-like string

Arguments

Type IntentOptional Attributes Name
type(Cstring), intent(in) :: string

Return Value character(len=:), allocatable


Source Code

  function fstring(string) result(res)
    use, intrinsic :: iso_c_binding, only: c_f_pointer, c_char
    type(Cstring), intent(in) :: string
    character(len=:), allocatable :: res
    character(len=1,kind=c_char), pointer :: fpstring(:)
    ! internal variables
    integer :: i
    allocate(character(len=string%length) :: res)
    call c_f_pointer(string%string, fpstring, shape=[string%length])
    do i = 1, string%length
      res(i:i) = fpstring(i)
    end do
  end function fstring