演算子には計算を行う優先順位があります。
主な演算子の優先順位を書くと、
++ --
**
* /
+ -
< > <= >= lt gt le ge
== != eq ne
&&
||
=
and
or xor
で、上に行くほど優先順位が高くて、下に行くほど低い。
横方向は同じ優先順位。
++ --:インクリメント、デクリメントで数値を1プラス、または、マイナスする。
前に付けるのと後ろに付けるのとでは加減算のタイミングが変わる。
$a=5; print $a++; 5と表示される。$aの内容は6に変わっている。 $a=5; print ++$a; 6と表示される。$aの内容は6になっている。 |
**:指数演算子で、-3**2は**が-よりも優先順位が高いので、先に3の2乗が計算され9になり、-がついて-9になる。
&&:andと同じだが、andより優先順位が高い。
||:orと同じだが、優先順位が高い。