现在的位置: 首页 > 综合 > 正文

perl的foreach赋值是引用

2013年02月15日 ⁄ 综合 ⁄ 共 557字 ⁄ 字号 评论关闭

这个程序将会把@a数组中所有的元素先逐个引用给$counter,然后把$counter地值打印出来。注意,我这里说得是引用,不是赋值,perl里面的“=”实际上是在进行引用,而不是赋值,这是需要同c严格区分的。下面的例子好玩,看一看:

   #!/user/bin/perl -w
   use strict;
   {
   my @a=(1..10);
   my $counter;
   foreach $counter (@a)
     {
      $counter++;
     }
   print "@a/n";
   }

  猜一猜将会打印出什么?呵呵,是234567891011。因为,$counter是@a中每个元素的引用,所以$counter++就对@a中每个元素进行了++操作。

   #!/user/bin/perl -w
   use strict;
   {
   my @a=(1..10);
   my $counter;
   foreach $counter (@a)
     {
      $counter++;
     }
   print "@a/n";
   }

  猜一猜将会打印出什么?呵呵,是234567891011。因为,$counter是@a中每个元素的引用,所以$counter++就对@a中每个元素进行了++操作。

抱歉!评论已关闭.