I'm having trouble understanding why pointers to pointers arise and am hoping someone could give me a very high level general explanation. For example
One thing I don't understand is int *myVar could be an array of int's - ok. But I don't see how if follows that int **myVar is an array of array's of int's because myVar still just points to a single address in memory. No matter how many * it always is just one address.