title: Why is 'a b' OK in C++?
body: <p>Looking at the following code:</p>
  
  <pre><code>string str = "xxxaa  bbcc";
  
  int pos1 = str.find("a  b"); // pos1=4
  int pos2 = str.find('a  b'); // pos2=7
  int pos3 = str.find('a  bb'); // error C2015: too many characters in constant
  </code></pre>
  
  <ul>
  <li><p>Why doesn't the second <code>'a  b'</code> trigger any errors? It always seems to me that <code>''</code> can only hold one char, but OK for 4 ones here? And why will I get <code>pos2=7</code> (just like only the last one char <code>'b'</code> is passed in)? </p></li>
  <li><p>From the second one, it seems <code>''</code> can hold for multiple chars, why won't it be ok for more than 5 chars, see the third example?</p></li>
  </ul>