title: Storing INT after CHAR in C requires 7 bytes instead of 4
body: <p>I was looking into the following C snippet:</p>
  <pre><code>char x = 'a';
  int y = 5;
  </code></pre>
  <p>After running gdb I encounter the following assembly:</p>
  <pre><code>mov BYTE PTR [ebp-1], 0x61
  mov DWORD PTR [ebp-8], 0x5
  </code></pre>
  <p>Why is <code>ebp</code> decreased by 7 instead of 4? If I replace <code>char x = 'a'</code> with <code>int x = 2</code>, I don't see this behavior.</p>