How does a pointer point to another pointer?

A pointer points to another pointer in the same way that a pointer points to a non-pointer object.

Start with a pointer to an object...

int a; // the object

int *pa = &a; // the pointer

pa; // is the value of the pointer

*pa; // is the value of the object

Now, create a pointer to a pointer to an object

int a; // the object

int *pa = &a; // the first pointer

int **paa = pa; // the second pointer

a; // is the value of the object

pa; // is the value of the first pointer

*pa; // is the value of the object using the first pointer

*paa; // is the value of the second pointer

**paa; // is the value of the object using the second pointer

And so on and so forth... Just don't forget to initialize each pointer along the way!