欢迎来到代码驿站!

perl

当前位置:首页 > 脚本语言 > perl

perl push的用法及子程序返回值的反思

时间:2021-03-13 09:49:54|栏目:perl|点击:

pop 操作将数组的最后一个元素取出并返回:

@array=5..9;
$fred=pop(@array); #$fred 得到 9,@array 现在为(5,6,7,8)
$barney=pop@array; #$barneygets8,@array 现在为(5,6,7)
pop@array; #@array 现在为(5,6)(7 被丢弃了)
最后一个例子中,pop 使用在"inavoidcontext",也就是说没有存放其返回值的地方。这样使用 pop 是合法的。

如果数组为空,那 pop 什么也不做(因为没有元素可以移出),并返回 undef。

你可能已注意到 pop 后可以使用或者不使用括号。这在 Perl 中是一条通用规则:如果去掉括号含义不变,那括号就是可选
的◆。和 pop 相反的操作是 push,它可以将一个元素(或者一列元素)加在数组的末尾:
◆受过相应教育的人将发现,这是同义反复。
push(@array,0); #@array 现在为(5,6,0)
push@array,8; #@array 现在为(5,6,0,8)
push@array,1..10; #@array 现在多了 10 个元素
@others=qw/9 0 2 1 0/;
push@array,@others; #@array 现在又多了 5 个元素(共有 19 个)
push 的第一个参数或者 pop 的唯一参数必须是数组变量。

复制代码 代码如下:

#!/bin/perl
sub above_average 

  $number=@_; 
  foreach $how(@_) 
  { 
     $total=$total+$how; 
  } 
  $the_average=$total/$number; 
  foreach (@_) 
  { 
     if ($_>$the_average) 
     { 
        push(@larger,$_)#这里不用赋值,数组元素的添加,直接用push就好了 
     } 
  } 
  @larger;#子程序的返回值,一定要有,刚开始没有写 

print "please input several numbers,and you will get the number which is large than their average\n"; 
@the_number_input=<STDIN>; 
@the_number_larger=above_average(@the_number_input); 
print "@the_number_larger\n";

上一篇:Perl实现的Linux下socket代理服务器

栏    目:perl

下一篇:Perl一句话命令行编程中常用参数总结

本文标题:perl push的用法及子程序返回值的反思

本文地址:http://www.codeinn.net/misctech/80051.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有