What part of dereferencing NULL pointers causes undesired behavior?
<p>I am curious as to what part of the dereferencing a NULL ptr causes undesired behavior.  Example:</p>

<pre><code>//  #1
someObj * a;
a = NULL;
(*a).somefunc();   // crash, dereferenced a null ptr and called one of its function
                   // same as a-&gt;somefunc();

//  #2
someObj * b;
anotherObj * c;
b = NULL;
c-&gt;anotherfunc(*b);   // dereferenced the ptr, but didn't call one of it's functions
</code></pre>

<p>Here we see in #2 that I didn't actually try to access data or a function out of b, so would this still cause undesired behavior if *b just resolves to NULL and we're passing NULL into anotherfunc() ?</p>
