title: Why C function strlen() returns a wrong length of a char?
body: <p>My C codes are listed below:</p>
  
  <pre><code>char s="MIDSH"[3];
  printf("%d\n",strlen(&amp;s));
  </code></pre>
  
  <p>The result of running is 2, which is wrong because char s is just an 'S'.</p>
  
  <p>Does anybody know why and how to solve this problem?</p>