子程序定义-1

来源:互联网 发布:服务器上同步软件 编辑:程序博客网 时间:2024/04/30 22:52
子程序即一段分离的代码,它可以使减少重复代码且使程序易读。PERL中,子程序可以出现在程序的任何地方。但一般放在程序的开始或结尾。sub subroute{ statements:}Sub开始,子程序名同变量的命名规则,可与变量同名。最好不要与内部函数同名。如果与内部函数同名则用&subroutine区分,不用&是内部函数,&是定义的函数,带有原型说明的子程序定义sub subroutine ($$) {   ##需要两个简单变量的参数     statements;}() 中的符号表示参数的类型。以一个字符表示一个参数.$ 简单变量 @列表 %散列&匿名子程序  *引用前面加\为强制类型一致。;分隔必须的参数和可选参数。\@$;$ 表示第一个参数为列表函数返回值:1. 缺省子程序中最后执行的一个语句的值将用作返回值,如果在if块中为最后执行的语句,虽然不是子程序的最后一句,也是返回值。$a=1;不用等于,直接$retval;split(/:/,@a);返回数组。2.语句return(retval);退出子程序并返回值retval,retval可以为列表。3.返回错误return;返回错误undef用eval('subroutine');函数,错误由$@变量中取得。参数传递形式:&sub1($number1,$number2,$number3);#调用sub sub1{my ($number1,$number2,$number3)= @_;}my $number1=shift;my $number2=shift2;my $number3=pop;所有参数在数组@_中,每个元素为$_[0],$_[1]@_,$_[] 为局部变量,当子程序内再调用子程序时, @_不改变。会新生成另一份@_改变@_内元素的值如$_[0] 会改变主程序的参数只。shift pop 一次取一个参数。对@_操作,shift 取第一个参数,然后删除,pop取最后一个参数再删除。

0 0
原创粉丝点击