A gentle introduction to pointers using C (2019)
A meta comment on tutorials to teach pointers:<p>If pointers are so &quot;simple&quot;, why are they so confusing?!?   Because pointers are one of those concepts that&#x27;s easier to <i>use</i> than to <i>explain</i>.<p>Some concepts like <i>pointers</i> (and also <i>monads</i> and also English words like <i>&quot;a&quot;</i> and <i>&quot;the&quot;</i>) are easier to teach by <i>examples</i> instead of by <i>definitions</i>.<p>E.g. Consider the English words &quot;a&quot; and &quot;the&quot;:  a 5-year old can fluidly <i>use</i> those connecting words when talking but a 50-year old adult that&#x27;s been speaking English for <i>decades</i> will have a tough time <i>defining what the words &quot;a&quot; and &quot;the&quot; _mean_</i> without giving a confusing and circular explanation.  Attempted explanation: the &quot;a&quot; is the indefinite or general signifier while &quot;the&quot; is the definite or specific signifier -- what&#x27;s the problem?[1]<p>How did small children <i>learn</i> how &quot;a&quot; and &quot;the&quot; work without being given a formal definition?  Because of numerous <i>examples</i>.<p>By working through enough examples, the lightbulb moment happens (&quot;oh gee, is that all pointers is?!?&quot;)  and the learner is able to derive his own definition.  But the irony is that the learner now has <i>The Curse of Knowledge</i>[2] and he&#x2F;she now thinks he can write a &quot;better&quot; tutorial to explain pointers but new learners reading that tutorial will still say <i>&quot;I don&#x27;t understand your explanation at all.&quot;</i><p>[1] riff on :  <a href="https:&#x2F;&#x2F;stackoverflow.com&#x2F;questions&#x2F;3870088&#x2F;a-monad-is-just-a-monoid-in-the-category-of-endofunctors-whats-the-problem" rel="nofollow">https:&#x2F;&#x2F;stackoverflow.com&#x2F;questions&#x2F;3870088&#x2F;a-monad-is-just-...</a><p>[2] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Curse_of_knowledge" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Curse_of_knowledge</a>