Just trying to really get my head round Arrays and Pointers in C and the differences between them and am having some trouble with 2d arrays.
For the normal 1D array
Pointers (char *pointer;) have values; arrays (char array[];) have elements.
char *pointer;
char array[];
The declaration char **ptr2 declares an object that can take a single value, not an object that can take several elements.
char **ptr2