The arduino reference page is useless when it comes to explaining pointers
Because pointers are not unique to the Arduino.
and my C book is confusing me. perhaps a literal approach to how this works will help me wrap my head around this one.
Are you familiar with the post office, and the rows of mailboxes that mail is delivered to, for people that don't want mail delivered to their houses?
Memory is arranged like those rows of mailboxes. A pointer is, effectively, a number on a mailbox. The mailbox might, or might not, have a name on it, but it does have a number.
A pointer variable holds the number of the mailbox (the address of the mailbox). You can get the data in the memory location (the mail in the mailbox) using the name on mailbox (a variable) or by pointer (the number on the box).
Notice those boxes without names? They can only be accessed by pointers.
Pointers are useful because you can access a whole string of memory locations by simply incrementing the pointer (changing the number of the mailbox to access).