子程序的定义: sub 程序名{ 代码 } 调用方法: &程序名; (如果perl能确定它是子程序,即在调用之前已经见过他,或者调用时使用了参数,可以省略&) 参数: 调用参数只要在调用子程序时加一列参数,如: $n =&max(10,15),这样就将10,15两个数传到了子程序中,并将这些参数存在子程序里默认名为@_的数组中,可以在子程序中调用该数组进行操作,如果传多了,多的就会被忽略,传少了,值就为undef。 内容: 子程序里定义的变量为全局变量。 如果需要私有变量用: my $变量名,例如如果将参数传到子程序中时,如果不想直接对数组操作(比较麻烦),可以把@_中的值放到列表中,如: my($n,$m) = @_; 还有一种私有变量是持久性私有变量: state $变量名,只在子程序中有用,但值会保留之前操作的值。 返回值: 每一个子程序都有返回值,为最后执行的表达式(不是代码最后一行,是表达式),如果是print,一般只会返回1,表示成功输出。还可以返回非标量返回值。 use strict; 强制使用一些严格的,良好的变成风格。 return; 在子程序中执行一半时停止,并返回return后面的值。