源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Perl函数(子程序)学习笔记

  • 时间:2021-10-07 13:21 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Perl函数(子程序)学习笔记
[b]一、函数定义[/b] 子程序即一段分离的代码,它可以使减少重复代码且程序易读.perl中,子程序可以出现在程序的任何地方.但一般放在程序的开始或结尾.
[u]复制代码[/u] 代码如下:
sub subroutine{     statements; }
sub开始,子程序名同变量的命名规则,可与变量同名,最好不要与内部函数同名,如果与内部函数同名则用$subroutine区分,不用&是内部函数,用&是定义函数,但省略&时混淆. 带有原型说明的子程序定义:
[u]复制代码[/u] 代码如下:
sub subroutine($$){   #需要两个简单变量的参数     statements; }
说明: 1.()中的符号表示参数的类型,以一个字符表示一个参数. 2.$ 简单变量   @ 列表  % 散列  & 匿名子程序   * 引用 3.前加\为强制类型一致,;分隔必须的参数和可选参数. 4.\@$;$表示第一个参数为列表,第二个参数为简单变量,第三个参数简单变量可选. [b]二、函数返回值[/b] 1.缺省子程序中最后执行的一个语句的值将用作返回值,如果在if块中为最后执行的语句,虽然不是子程序的最后一句,也是返回值.
[u]复制代码[/u] 代码如下:
$a=1;
不用等于,直接$retval;
[u]复制代码[/u] 代码如下:
split(/:/,@a) 返回数组.
2.语句return(retval) 退出子程序并返回值retval,retval可以为列表. 3.返回错误 return 返回错误undef 用eval(‘subroutine') 函数,错误由$@变量中取得. [b]三、函数参数传递[/b] 形式:
[u]复制代码[/u] 代码如下:
$sub1($num1,$unm2,$num3);     调用 sub sub1{ my($num1,$unm2,$num3)=@_; } my $num1=shift; my $num2=shift; my $num3=pop;
说明: 1.所有参数在数组@_中,每个元素为$_[0],$_[1] 2.@_,$_[]为局部变量,当子程序内再调用子程序时,@_不改变,会新生成另一份@_. 3.改变@_内元素的值如$_[0]会改变主程序的参数值. 4.shift pop 一次取一个参数.对@_操作,shift取第一个参数,然后删除,pop取最后一个参数再删除.
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部