title: Incrementation after return
body: <p>I think it is a very simple question... I've some code like this:</p>
  
  <pre><code>//head is somewhere initialized with 0 (int head=0;)
  char testclass::read() {
      return data[head];
      ++head;
  }
  </code></pre>
  
  <p>When I try to run it I create a loop. Changing it to:</p>
  
  <pre><code>char testclass::read() {
      ++head;
      return data[head];
  }
  </code></pre>
  
  <p>runs without a problem, except that head is incremented to fast. So what's the problem?</p>