A pointer is a variable that holds the address of another location. You can use them to point to any object, thus making them very useful. You can use '&' before a variable name to access it's actual location in memory. A pointer and where it is pointing don't necessarily have the same address and actually never will (unless a pointer is pointing to itself).