Integer pointer variables can be:
Note that the XL Fortran compiler uses 1-byte arithmetic for integer pointers in assignment statements.
INTEGER INT_TEMPLATE POINTER (P,INT_TEMPLATE) INTEGER MY_ARRAY(10) DATA MY_ARRAY/1,2,3,4,5,6,7,8,9,10/ INTEGER, PARAMETER :: WORDSIZE=4 P = LOC(MY_ARRAY) PRINT *, INT_TEMPLATE ! Prints '1' P = P + 4; ! Add 4 to reach next element ! because arithmetic is byte-based PRINT *, INT_TEMPLATE ! Prints '2' P = LOC(MY_ARRAY) DO I = 1,10 PRINT *,INT_TEMPLATE P = P + WORDSIZE ! Parameterized arithmetic is suggested END DO END