title: correct way to assign function pointer
body: <p>I'm a little confused about the correct syntax for assigning a function pointer to a
  variable. If I have a function foo </p>
  
  <pre><code>int foo();
  </code></pre>
  
  <p>and I am assigning a pointer to foo to variable bar </p>
  
  <pre><code>void * bar;
  </code></pre>
  
  <p>it does not seem to matter if I use </p>
  
  <pre><code>bar = foo; 
  // or 
  bar = &amp;foo; 
  </code></pre>
  
  <p>It seems to me that only one of these should be correct or am I missing something?</p>