title: Can -std=c99 prevent my #includes from working properly?
body: <p>I am trying to compile a C program on a Linux system. I have an <code>#include</code> statement for <code>stdlib.h</code>.</p>
  
  <p>When I compile the program with <code>gcc</code> as follows:</p>
  
  <pre><code>gcc -std=c99 -g -o progfoo progfoo.c progbar.c
  </code></pre>
  
  <p>I get warnings about <code>Implicit declaration of function [srand48, drand48, bzero, or close]</code>.</p>
  
  <p>Compiling instead as:</p>
  
  <pre><code>gcc -g -o progfoo progfoo.c progbar.c
  </code></pre>
  
  <p>doesn't give me the warnings, but it does yell about my use of <code>for</code> loops (which was the rationale for adding <code>-std=c99</code> in the first place).</p>
  
  <p>Given that <code>man srand48</code> mentions including <code>&lt;stdlib.h&gt;</code>, which I have, I'm unsure what else the problem could be. The <code>for</code> loops aren't essential to anything (they were just to save time in initializing an array) so I have no problem removing them, but before I do I'd like to confirm whether the <code>c99</code> standard is superseding some aspect of my <code>#include</code> statements.</p>
  
  <p>I'm using <code>gcc 4.1.2-50 (Red Hat)</code>.</p>