title: Wrong result with bitwise inclusive OR
body: <p>I can't figure out why does inclusive OR return wrong result.</p>
  
  <pre><code>char arr[] = { 0x0a, 0xc0 };
  uint16_t n{};
  
  n = arr[0]; // I get 0x000a here.
  n = n &lt;&lt; 8; // Shift to the left and get 0x0a00 here.
  n = n | arr[1]; // But now the n value is 0xffc0 instead of 0x0ac0.
  </code></pre>
  
  <p>What is the mistake in this example? Console app, MVS Community 2017.</p>