I think the reason it works this way is simpler than you make out. The important thing is the implementation of the preincrement operator: do { $m = 20; ++$m } does not return the value 20, rather it returns the variable $m.
Therefore the sequence of operations reduces to:
$m = 20; # $m == 20 ++$m; # $m == 21 $temp1 = $m++ # $m == 22, $temp1 == 21 $temp2 = $m + $temp1 # 22 + 21 = 43 print $temp2
Hope this helps,
Hugo
In reply to Re: Quantum Weirdness and the Increment Operator
by hv
in thread Quantum Weirdness and the Increment Operator
by barrachois
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |