例2 a = 1; a++; b = a; |
というプログラムは、前置演算を用いて、次の様に簡潔に書ける。
例3 a = 1; b = ++a; |
つまり、インクリメント演算子を前に置く(前置)ことによって、先に の値が
1つ増やされてから、
への代入がなされる。
逆に、次の様なプログラムは、
例4 a = 1; b = a; a++; |
例5 a = 1; b = a++; |
のように後置することによって簡潔に書ける。
例3と例5を見比べると非常に似通っているが、例3では、 がインクリメント
されてから
に代入されるので、
の値は2になるのに対し、例4では、
代入されてからインクリメントが行われるので
の値は1になる。
即ち、例3は例2を簡潔にしたものであること、例4は例3を簡潔にしたもので
あることをしっかりと認識しておくことが重要である。
その他の例 例6 x = --i + --j; 例7 x = (++i)*(++j); |