perl编程中的$_[0],$_[1]
(2010-05-12 15:42:53)
标签:
_[0]_[1]perl杂谈 |
分类: perl语言学习 |
函数的参数
&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
前一篇:信使RNA选择性拼接普遍存在
后一篇:一台电脑多个perl版本

加载中…