关于自动递增运算符需要注意:当你将它用于一个文本字符串,而该文本字 符串是以字母字符开始,后随字母字符或数字,那么这个运算符就具有一种非常特殊的作用。字符串的最后一个(最右边)字符被递增。如果它是个字母字符,它将成为序列中的下一个字母,如果这个字母字符是z,则它将变成a,并且使这个字母的前一个字母也加1;如果它是个数字,那么该数字将递增1,如果超过10,则进位。
#!/usr/bin/perl
use warnings;
use strict;
my $a = "999";#prints 1000, as you'd expect
$a++;
print $a."\n";
$a = "c9";
$a++;
print $a."\n"; #print d0. 9+1=10, carry 1 to the c
$a = "zzz";
$a++;
print $a."\n"; #print "aaaa".
use warnings;
use strict;
my $a = "999";#prints 1000, as you'd expect
$a++;
print $a."\n";
$a = "c9";
$a++;
print $a."\n"; #print d0. 9+1=10, carry 1 to the c
$a = "zzz";
$a++;
print $a."\n"; #print "aaaa".
运行结果:
1000
d0
aaaa
d0
aaaa
转载于:https://blog.51cto.com/cynthia/626576