Pointers are data items that contain virtual storage addresses. You define them either explicitly with the USAGE IS POINTER clause in the DATA DIVISION or implicitly as ADDRESS OF special registers.
You can perform the following operations with pointer data items:
Pass them between programs by using the CALL . . . BY REFERENCE statement.
Move them to other pointers by using the SET statement.
Compare them to other pointers for equality by using a relation condition.
Initialize them to contain an invalid address by using VALUE IS NULL.