I bought this book on Yegge's recommendation as well, and this actually was a stumbling block for me at first.
"Whyyy is this variable, ★★p a pointer to a pointer?! p is never referenced in the function, so why are we two levels of indirection down?!" I didn't realize at the time that pointers are copied by value in C, so in order to modify the pointer you need to give the function a pointer to it.
I guess it was worthwhile, though, because it encouraged me to play around with C[1] a bit in order to grok it.
P.S. Sorry for those stupid stars, HN kept eating my highlights. Any way to avoid that?
I don't think anyone can forget pointers though, except in Winnie the Pooh way.
Also, anyone learning data structures should know pointers or at least references as a prerequisite. You can't reason about efficiency in data structures knowing only the high level comfort of Python.
It is hard for me to take advice seriously from someone who says this.