title: How come tt[9] is '4' after strcpy has changed its value?
body: <pre><code>#include &lt;stdio.h&gt;
  #include &lt;string.h&gt;
  
  int main(void) {
      char tt[20] = "9081726354";
      strcpy(tt, tt + 3);
      printf("%d\n", strlen(tt) - tt[9] + '5');
  
      return 0; 
  }
  </code></pre>
  
  <p>After <code>strcpy</code>, <code>tt</code> is now <code>1726354</code> and its length is <code>7</code>. ASCII of <code>'5'</code> is <code>53</code>. But I don't get how <code>tt[9]</code> is <code>'4'</code> after string pointed by <code>tt</code> is changed.</p>