title: Storing negative int value in an unsigned bit and subtracting from it
body: <p>First of all I've been searching for the outcome of a negative input in an unsigned int but can't find out how it is converted. Like for example -3. How does -3 look like and how did it turn out like that?</p>
  
  <p>How about subtracting from it? </p>
  
  <p>What will happen?</p>
  
  <pre><code>#include &lt;stdio.h&gt; 
  
  int main(){ 
  unsigned int num1 = 3, num2 = -2; 
  
  printf("num1's initial value is %u.\n",num1); 
  printf("num2's initial value is %u.\n",num2); 
  
  num1 = num1 + 1; 
  num2 = num2 - 1; 
  
  printf("num1's value is now %u.\n",num1); 
  printf("num2's value is now %u.\n",num2); 
  
  num1 = 2147483647; 
  num2 = -2147483648; 
  
  printf("num1's value is now %u.\n",num1); 
  printf("num2's value is now %u.\n",num2); 
  
  num1 = num1 + 1; 
  num2 = num2 - 1; 
  
  printf("num1's value is now %u.\n",num1); 
  printf("num2's value is now %u.\n",num2);
  
  return 0;
  }
  </code></pre>