title: output and misunderstanding in C++
body: <p>I want to know why the output is (1), and why In the second assignment to variable b, the expression (i+=2) does not get evaluated. finally how does this program execute step by step?
  I am still a beginner.</p>
  <p>`</p>
  <pre><code>int i = 0;
  bool t = true;
  bool f = false,
      b;
  
  b = (t &amp;&amp; ((i++) == 0));
  b = (f &amp;&amp; (i += 2 &gt; 0));
  
  cout &lt;&lt; i &lt;&lt; endl;
  </code></pre>
  <p>`</p>