And after you've learned that (basics of pointers in C), a nice quick test of your knowledge (but not a comprehensive one) can be to read this standard declaration of main() in C (based on ANSI C, BTW, as described in 2nd edition of K&R C book, not sure if changed in later versions of standard):
int main(int ac, char **av)
and then try to figure what the following mean (what type they are, and whether each of them is a pointer or a pointed-to thing, or both:
av
*av
**av
av[0]
etc.
I was once teaching a class on C to a group of experienced programmers (10+ years each, but new to C), and after I explained the char
**av
stuff, one of them said "Now it is overhead transmission" :)