title: Question : char d = -1 printf("%u",d); why outpt is not 255
body: <p>I confused about first "printf" function print d is not 255, why d is 4294967295, anyone can help me explain that  </p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  int main()
  {
      unsigned char c = -1;
      char d = -1;
      int i = -1;
      printf("c=%u,d=%u,i=%u\n", c, d, i);
      printf("c=%d,d=%d,i=%d\n", c, d, i);
      return 0;
  }
  </code></pre>
  
  <p>output is</p>
  
  <p><a href="https://i.stack.imgur.com/kF85e.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/kF85e.png" alt="enter image description here"></a></p>