title: why doesn't this c programme  print the first printf statement?
body: <pre><code>#include&lt;stdio.h&gt;
  #include &lt;unistd.h&gt;
  int main(){
        while(1)
        {
  
                fprintf(stdout,"hello-out");
                fprintf(stderr,"hello-err");
                sleep(1);
        }
        return 0;
  }
  </code></pre>
  
  <p>On compiling this programme in gcc and on executing it only prints hello-err and not hello-out.Why is that so?Can someone please explain the reason behind it?</p>