perl 中 $#ARGV 是什么意思

perl 中 $#ARGV 是什么意思

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];

  • 发表于 2018-08-17 10:37
  • 阅读 ( 5583 )
  • 分类:perl

0 条评论

请先 登录 后评论
安生水
安生水

351 篇文章

作家榜 »

  1. omicsgene 702 文章
  2. 安生水 351 文章
  3. Daitoue 167 文章
  4. 生物女学霸 120 文章
  5. xun 82 文章
  6. rzx 78 文章
  7. 红橙子 78 文章
  8. CORNERSTONE 72 文章