title: char val = 'abcd'. Using multi character char
body: <p>I have a confusion of how the compiler handles a char variable with multiple characters. I understand that a char is 1 byte and it can contain one character like ASCII.</p>
  
  <p>But when I try:</p>
  
  <pre><code>char _val = 'ab';
  char _val = 'abc';
  char _val = 'abcd';
  </code></pre>
  
  <p>They compiles fine and when I print _val it always prints the last character. But when I did</p>
  
  <pre><code>char _val = 'abcde';
  </code></pre>
  
  <p>Then I got a compiler error:</p>
  
  <blockquote>
    <p>Error 1   error C2015: too many characters in constant</p>
  </blockquote>
  
  <p>So my questions are:</p>
  
  <ol>
  <li>Why does the compiler always takes the last character when multiple characters are used? What is the compiler mechanism in this situation.</li>
  <li>Why did I get a too many characters error when I put 5 characters. 2 characters is more than what a char can handle so why 5?</li>
  </ol>
  
  <p>I am using Visual Studio 2013.</p>
  
  <p>Thank you.</p>