Perl语言入门笔记 第四章 子程序
2015-08-24 01:02
323 查看
=pod 定义子程序: sub sub_name { #($var1, $var2) = @_; #$var1 = $_[0]; #$var2 = $_[1]; #定义局部变量: my $myVar = $_[1]; my ($m, $n) = @_; } 调用子程序: &sub_name; $maximum = &max(3, 5, 10, 4, 6); sub max { my($max_so_far) = shift @_; #数组中的第一个值,暂时把它当成最大值 foreach(@_) #遍历@_比较得出最大值 { if($_ > $max_so_far) { $max_so_far = $_; } } $max_so_far; #此时就相当于,return $max_so_far; } 关于词法(my)变量: 可以在if、while、foreach的语句块里使用。 foreach(1..10) { my($square) = $_ * $_; #该循环中的私有变量 print "$_ squared is $square.\n"; } my($num) = @_; #列表上下文,和($num) = @_;相同,得到@_的第一个元素 my $num = @_; #标量上下文,和$num = @_;相同,得到@_里面元素的个数 my @phone_number; 在日常perl编程当中,最好对每个新变量都是用my声明,让它保持在自己所在的词法作用于内。在第三章中,你已经看到过如何在foreach循环中定义自己的控制变量而这个控制变量也可以声明为词法变量: foreach my $rock (qw/bedrock slate lava/) { print "One rock is $rock.\n";#依次输出每块石头的名字 } return操作符: 和c/c++的语言没多大区别,可以终止循环,提前退出,也可以在最后返回某值 可以返回非标量数值,通俗点讲就是返回数组和哈希表类的变量 state限定符: state限定符和c语言中的static限定符一样,限定某个变量后,只会初始化一次,然后会保存上次的值 如: 注意:要加上use 5.010; sub marine { state $n = 0; #持久性私有变量$n $n += 1; print "Hello, sailor number $n!\n"; } =cut #!/usr/bin/perl -w use utf8; use diagnostics; use strict; system "pause";
相关文章推荐
- Hbuilder开发app实战-识岁06-face++的js实现【完结】
- ios中socket编程
- ThreadLocal在spring框架中的作用
- HDU2087 剪花布条
- JTAG – A technical overview and Timing
- 编写高质量代码改善C#程序的157个建议——建议148:不重复代码
- 使用JPA TOOLS从数据库生成Entity文件
- 编码总结一:Java默认字符集
- <context:component-scan>使用说明
- Dom解析XML文件数据
- Merge k Sorted Lists
- 剑指Offer面试题:9.二进制中1的个数
- 通过反射,调用类中的方法
- 【MySQL集群】——Java程序连接MySQL集群
- HDUOJ_3665(Seaside)(dijkstra)
- 【C语言】预处理指令—条件编译
- 解题报告 之 HDU5319 Painter
- JavaHttpGet中文内容编码为GBK时注意
- MySQL安装方法
- 解题报告 之 2015蓝桥杯 垒骰子