Pointers have a reputation for being difficult to understand, in reality, the essence of pointers is quite simple---a pointer is a variable can contain a memory address.