title: Padding values when converting to larger types in C
body: <p>case 1:</p>
  
  <pre><code>int8_t a = -10;
  int32_t b;
  b = (int32_t)a;
  </code></pre>
  
  <p>case 2:</p>
  
  <pre><code>uint8_t a = 10;
  uint32_t b;
  b = (uint32_t)a;
  </code></pre>
  
  <p>What will b be in these two cases? Is there any guarantees? Will the 3 extra bytes during the type conversion be padded with 0?</p>
  
  <p>Clarification: larger as in more bytes.</p>