c_funloc(3f) - [FORTRAN:INTRINSIC:ISO_C_BINDING] Obtain the C address of a procedure
Syntax
Description
Arguments
Return Value
Example
Standard
Class
See Also
result = c_funloc(x)
c_funloc(x) determines the C address of the argument.
X - Interoperable function or pointer to such function.
The return value is of type c_funptr and contains the C address of the argument.
Sample program:
! program demo_c_funloc and module module x use iso_c_binding implicit none contains subroutine sub(a) bind(c) real(c_float) :: a a = sqrt(a)+5.0 end subroutine sub end module x ! program demo_c_funloc use iso_c_binding use x implicit none interface subroutine my_routine(p) bind(c,name=myC_func) import :: c_funptr type(c_funptr), intent(in) :: p end subroutine end interface call my_routine(c_funloc(sub)) ! end program demo_c_funloc
[[Fortran 2003]] and later
[[Inquiry function]]
[[c_associated]], [[c_loc]], [[c_f_pointer]], [[c_f_procpointer]], [[iso_c_binding]]
c_funloc (3) | March 18, 2019 |