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_1
or ifc_ptr_1
is associated with the targetc_ptr_2
.- Parameters
c_ptr_1 – Scalar of the type
C_PTR
orC_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_1
is a C NULL pointer or ifc_ptr1
andc_ptr_2
point 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