Interoperability Concepts
C Binding Name
Stable External Symbol
iso_c_binding lets Fortran code describe names and types intended for C interop. A binding name is the stable external symbol.
Program
Play the program to choose the API version and build the exported symbol name.
c_binding_name.f90
program c_binding_name_demo
use iso_c_binding, only: c_int
implicit none
integer(c_int) :: version
character(len=24) :: symbol
version =
write(symbol, '(A,I0)') 'run_step_v', version
print '(A)', trim(symbol)
end program c_binding_name_demo
program c_binding_name_demo
use iso_c_binding, only: c_int
implicit none
integer(c_int) :: version
character(len=24) :: symbol
version =
write(symbol, '(A,I0)') 'run_step_v', version
print '(A)', trim(symbol)
end program c_binding_name_demo
program c_binding_name_demo
use iso_c_binding, only: c_int
implicit none
integer(c_int) :: version
character(len=24) :: symbol
version =
write(symbol, '(A,I0)') 'run_step_v', version
print '(A)', trim(symbol)
end program c_binding_name_demo
iso_c_binding
`iso_c_binding` provides interoperable kind names such as `c_int`.
external symbol
A stable binding name is the text another language would look up.
write to character
`write(symbol, ...)` formats text into a fixed-length character variable.