perl中会遇到一些特殊的符号,让人不知道是干嘛的,例如前不久遇到的 $# 后加数组名($#ARGV),第一次见不知道代表什么,查阅后才知道他代表数组的个数减一,即数组@ARGV最后一个元素的索引。用处也就是在程序开始时判断命令行参数个数,或者直接操作最后一个命令行参数。官方文档说明:
The array @ARGV contains the command-line arguments intended for the script. $#ARGV is generally the number of arguments minus one, because $ARGV[0] is the first argument, not the program's command name itself. See $0 for the command name.
$#加数组名表示数组最后一个元素的索引这种方式在实际的代码中不常用。判断数组个数,通常方法是把@ARGV用在标量上下文中,而直接操作最后一个数组元素,可以利用负数索引值。如:
$i = @ARGV;
$n = $ARGV[-1];
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!