perl也支持數值類型的自增和自減操做。不只如此,還支持字符、字符串的自增、自減。code
$a=10; # 如下4句爲獨立的自增、自減表達式,自增自減符號的位置無所謂 $a++; # 先返回10,再遞增爲11 ++$a; # 先遞增爲12,再返回12 --$a; # 先遞減爲11,再返回11 $a--; # 先返回11,再遞減爲10 # 如下4句爲非獨立的自增、自減表達式,自增自減符號的位置有影響 $m = $a++; # 先返回10賦值給$m,而後$a再遞增爲11,因此執行結束後$m=10,$a=11 $m = ++$a; # 先遞增爲12,再賦值給$m,因此執行結束後$m=12,$a=12 $m = --$a; # 先遞減爲11,再賦值給$m,因此執行結束後$m=11,$a=11 $m = $a--; # 先返回11賦值給$m,而後$a再遞減爲10,因此執行結束後$m=11,$a=10
對於字符和字符串的自增、自減。規則是從最後一個字符按照ascii順序向上進一位,也就是A-->Z,a-->z,若是是Z或z字符,再進一位表示多加一個字符。看示例更容易理解。ci
$a="b"; say ++$a; c $a="ba"; say ++$a; bb $a="bz"; say ++$a; ca $a="Az"; say ++$a; Ba $a="bZ"; say ++$a; cA $a="zz"; say ++$a; aaa