c_loc(3f) - [FORTRAN:INTRINSIC:ISO_C_BINDING] Obtain the C address of an object
result = c_loc(x)
c_loc(x) determines the C address of the argument.
X Shall have either the POINTER or TARGET attribute. It shall not be a coindexed object. It shall either be a variable with interoperable type and kind type parameters, or be a scalar, nonpolymorphic variable with no length type parameters.
The return value is of type c_ptr and contains the C address of the argument.
Sample program:
subroutine association_test(a,b) use iso_c_binding, only: c_associated, c_loc, c_ptr implicit none real, pointer :: a type(c_ptr) :: b if(c_associated(b, c_loc(a))) & stop b and a do not point to same target end subroutine association_test
[[Fortran 2003]] and later
[[Inquiry function]]
c_associated(3), c_funloc(3), c_f_pointer(3), c_f_procpointer(3), iso_c_binding(3)
c_loc (3) | March 11, 2021 |