title: stderr undeclared identifier
body: <pre><code>void
  argmatch_valid (const char *const *arglist,
              const char *vallist, size_t valsize)
  {
    size_t i;
    const char *last_val = NULL;
  
    fprintf (stderr, _("Valid arguments are:"));
    for (i = 0; arglist[i]; i++)
      if ((i == 0)|| memcmp (last_val, vallist + valsize * i, valsize))
      {
        fprintf (stderr, "\n  - `%s'", arglist[i]);
        last_val = vallist + valsize * i;
      }
      else
      {
        fprintf (stderr, ", `%s'", arglist[i]);
      }
    putc ('\n', stderr);
  }
  </code></pre>
  
  <p>I am getting the following although I have included stdio.h in my .c file</p>
  
  <pre>
  warning C4013: 'fprintf' undefined; assuming extern returning int
  
  error C2065: 'stderr' : undeclared identifier
  
  warning C4013: 'putc' undefined; assuming extern returning int
  </pre>
  
  <p>I thought of disabling the warning by #pragma warning( disable :4013 ) but wanted to compile the code clean.</p>
  
  <p>Thanks in advance</p>