title: printf pointer argument type warning?
body: <p>Is there a good way to get rid of the following warning? I know it's a type issue in that I'm passing a <code>unsigned long pointer</code> and not an <code>unsigned long</code>, but does printf somehow support pointers as arguments? The pedantic in me would like to get rid of this warning. If not, how do you deal with printing de-referenced pointer values with <code>printf</code>?</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  int main (void) {
      unsigned long *test = 1;
      printf("%lu\n", (unsigned long*)test);
      return 0;
  }
  </code></pre>
  
  <p><em>warning: format specifies type 'unsigned long' but the argument has type</em></p>