ASSOCIATED
— Status of a pointer or pointer/target pairASSOCIATED(POINTER [, TARGET])
determines the status of the pointer
POINTER or if POINTER is associated with the target TARGET.
RESULT = ASSOCIATED(POINTER [, TARGET])
POINTER | POINTER shall have the POINTER attribute
and it can be of any type.
|
TARGET | (Optional) TARGET shall be a pointer or
a target. It must have the same type, kind type parameter, and
array rank as POINTER.
|
ASSOCIATED(POINTER)
returns a scalar value of type LOGICAL(4)
.
There are several cases:
ASSOCIATED(POINTER)
is true if POINTER is associated with a target; otherwise, it returns false.
program test_associated implicit none real, target :: tgt(2) = (/1., 2./) real, pointer :: ptr(:) ptr => tgt if (associated(ptr) .eqv. .false.) call abort if (associated(ptr,tgt) .eqv. .false.) call abort end program test_associated