module psb_base_string_cbind_mod use iso_c_binding contains subroutine stringc2f(cstring,fstring) character(c_char) :: cstring(*) character(len=*) :: fstring integer :: i i = 1 do if (cstring(i) == c_null_char) exit if (i > len(fstring)) exit fstring(i:i) = cstring(i) i = i + 1 end do do if (i > len(fstring)) exit fstring(i:i) = " " i = i + 1 end do return end subroutine stringc2f subroutine stringf2c(fstring,cstring) character(c_char) :: cstring(*) character(len=*) :: fstring integer :: i do i=1, len(fstring) cstring(i) = fstring(i:i) end do cstring(len(fstring)+1) = c_null_char return end subroutine stringf2c end module psb_base_string_cbind_mod