ASSOCIATED(POINTER [, TARGET])
determines the status of the pointer POINTER or if POINTER is associated with the target TARGET.
Fortran 95 and later
Inquiry function
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. |
The association status of neither POINTER nor TARGET shall be undefined.
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.
TARGET is not a zero-sized storage sequence and the target associated with POINTER occupies the same storage units. If POINTER is disassociated, the result is false.
TARGET and POINTER have the same shape, are not zero-sized arrays, are arrays whose elements are not zero-sized storage sequences, and TARGET and POINTER occupy the same storage units in array element order. As in case(B), the result is false, if POINTER is disassociated.
if TARGET is associated with POINTER, the target associated with TARGET are not zero-sized storage sequences and occupy the same storage units. The result is false, if either TARGET or POINTER is disassociated.
target associated with POINTER and the target associated with TARGET have the same shape, are not zero-sized arrays, are arrays whose elements are not zero-sized storage sequences, and TARGET and POINTER occupy the same storage units in array element order. The result is false, if either TARGET or POINTER is disassociated.
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
Next: ATAN, Previous: ASINH, Up: Intrinsic Procedures [Contents][Index]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.2.0/gfortran/ASSOCIATED.html