Pointer Models
You can think of pointers in two ways:
as high-level “reference” types
as low-level machine addresses