I tried this code:
int main(void)
{
   FILE *fp;    // Assuming fp is initialized
   putw(11,fp);  /* Instead of writing 11 to the file this statement
                    wrote an unwanted character into the file */
   /* However when I put 11 in single quotes as,
   putw('11', fp);
   It worked properly and wrote integer 11 into the file */
}
What is the explanation for this behaviour?
 
     
     
    