perl编程中的$_[0],$_[1]
来源:互联网 发布:银行数据录入员 编辑:程序博客网 时间:2024/06/07 18:39
函数的参数
&abc("a","b")
sub abc {
$first=$_[0];
$second=$_[1];
....
}
abc("a","b")
abc函数中有a,b两个参数
$_[0]的值就是a
$_[1]的值就是b
在你写自定义函数的时候需要参数传递时
$_[0]表示函数的第一个参数
$_[1]表示函数的第二个参数
以此类推.......
#!/usr/bin/perl
$sum1 = my_sum1(1,2);
$sum2 = my_sum2(1,2);
print "sum1 = $sum1 sum2 = $sum2";
sub my_sum1 {
($first,$second)=@_;
return($first+$second);
}
sub my_sum2 {
$first=$_[0];
$second=$_[1];
return($first+$second);
}
exit;
++++++++++++++++++
PERL的表达是非常灵活的,以上两个函数是等效的,还有其他写法,这里不多举例了,执行结果为:
sum1 = 3 sum2 = 3
第一种写法是比较常见的,第二种是简单直接的写法,你可以只接收你想要的参数,它的好处是如果你接收了一万个参数,你可以用$_[999]来接收第999 个参数,而其他的就不用管。在PERL中,当一个自定义函数接收参数时,它都放在数组@_中,$_[0],$_[1]就是从该数组中去取参数。
http://www.csdn.net/expert/topic/1082/1082680.xml?temp=.4057123
应该多看看!
$_[0] 是@_ 中的第一个元素
$_[1] 是@_ 中的第二个元素
此方法多用在Sub过程中 到现在为止 我还不清楚 SUB 算过程还算函数 呵呵~~
可能有回值算函数吧 没有 算过程吧……
其实很简单,所有传入perl过程的参数都是以@_身份传入的。如果调用一个有两个参数的函数,它们在函数内部可以作为@_数组的前两个成员访问:$_[0]和$_[1]。因为@_只是一个有着奇怪名字的普通数组,所以你可以像处理普通数组一样随意的处理它,知道了这一点,其他的书写模式也就不奇怪了:
比如: ($first,$second)=@_; 就是将数组@_中的两个元素分别付给$first,$second,由于@_是数组,所以将$first,$second用括号括起来表示列表环境。
还有什么 $first = shift; $second = shift; 将@_中的第一个元素付给$first,第二个元素付给$second
From:http://topic.csdn.net/t/20021015/11/1098005.html
在你写自定义函数的时候需要参数传递时
#!/usr/bin/perl
http://www.csdn.net/expert/topic/1082/1082680.xml?temp=.4057123
其实很简单,所有传入perl过程的参数都是以@_身份传入的。如果调用一个有两个参数的函数,它们在函数内部可以作为@_数组的前两个成员访问:$_[0]和$_[1]。因为@_只是一个有着奇怪名字的普通数组,所以你可以像处理普通数组一样随意的处理它,知道了这一点,其他的书写模式也就不奇怪了:
From:http://topic.csdn.net/t/20021015/11/1098005.html
- perl编程中的$_[0],$_[1]
- Perl语言中的 $_ 和 @_
- Perl 中的特殊变量 $&, $`,$' ,@_
- perl @_ $_ 的意思
- perl中@_与$_
- perl的变量@_
- perl自学3_
- perl 函数, 参数, @_, $_, $_[0], shift 的用法示例
- 编程学习中的一些认识_转载
- 07_整数类型_进制转换_编程中的L问题
- Linux_2.1_编程规范
- 资料_编程_大杂烩
- perl中@_,$_和$1,$2,...及其类似变量的含义
- excel格式 _ * #,##0_ ;_ * -#,##0_ ;_ * "-"_ ;_ @_
- perl基础:perl中@_,和1,$2,...及其类似变量的含义
- perl基础:perl中@_, 和 1,$2,...及其类似变量的含义
- 自学perl笔记1_在windows上运行perl程序
- perl面向对象编程(参数篇)-子程序参数@_的使用
- linux基本操作
- 关于正则项的用处 usefullness of regulation
- continue and break for java
- SAP已用信贷额度计算
- how to keep Lispython in good condition?
- perl编程中的$_[0],$_[1]
- STL中的最有用的经验总结(一)
- VB.net 应用积累
- Unable to open log device ‘/dev/log/main’: No such file or directory
- 写给未来的xuddk
- Windows_XP SP3 Profession 正版密钥
- linux route 命令 详解 perfect
- CentOS:添加NTFS挂载支持
- rails3学习系列(二)MVC---NetworkError: 500 Internal Server Error