(* filename:  pointer3.pp *)

 

program pointerRecordTest (output);

{

  This program just shows type a definition for a node in a linked list

  containing a pointer to a node. It also shows the type definition of a pointer

  to a node.  The order of the definitions of NodePtr and Node can not be

  interchanged.

}  

 TYPE

     

      NodePtr = ^Node;

      Node = record   (* record is a reserved word *)

                      (* record is a heterogeneous data structure *)

         data:  integer;

            next : nodePtr;

      end;

     

begin

  writeln ( ' This program just shows type a definition for a node in a linked list ');

  writeln ( ' containing a pointer to a node. It also shows the type definition of a ');

  writeln ( ' pointer to a node. ');

end.