C_ASSOCIATED — Status of a C pointer#
-
C_ASSOCIATED(c_ptr_1, c_ptr_2)#
C_ASSOCIATED(c_ptr_1[, c_ptr_2])determines the status of the C pointerc_ptr_1or ifc_ptr_1is associated with the targetc_ptr_2.- Parameters:
c_ptr_1 – Scalar of the type
C_PTRorC_FUNPTR.c_ptr_2 – (Optional) Scalar of the same type as
c_ptr_1.
- Returns:
The return value is of type
LOGICAL; it is.false.if eitherc_ptr_1is a C NULL pointer or ifc_ptr1andc_ptr_2point to different addresses.
- Standard:
Fortran 2003 and later
- Class:
Inquiry function
- Syntax:
RESULT = C_ASSOCIATED(c_ptr_1[, c_ptr_2])
- Example:
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
- See also:
C_LOC — Obtain the C address of an object, C_FUNLOC — Obtain the C address of a procedure