曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 3560|回复: 0
打印 上一主题 下一主题

内置变量 $_

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34395
跳转到指定楼层
楼主
发表于 2011-9-20 22:11:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
$_ 是 perl 的内置变量,表示的是当前正在处理的变量。

测试代码:
[Perl] 纯文本查看 复制代码
#!/usr/bin/perl

sub mysubf2 {
        foreach (@_) {
                print "$_ ";
        }
        print "\n";
}

while (<STDIN>) {
         print "I saw $_";
}

mysubf2(1, 3, 5, 7, 9);

运行输出:
./subfun.pl
d
I saw d
q
I saw q
1 3 5 7 9
上面程序中,使用一个 while 循环不断的接收标准从标准输入的内容,如果不明确给出一个要存储输入的变量,那么这些输入的内容被自动填入 $_ 变量中。如上面输出,当输入 q 后,我们接着按下 ctrl + d 组合键,表示结束标准输入,于是接着程序调用 mysubf2() 子程序,该子程序遍历了它的参数列表(参数列表中的参数存储在 @_ 内置变量中)。在每次迭代中,由于我们没有明确给出一个变量来接收这次迭代所得到的参数,所以这些参数会被自动填入到 $_ 中。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-5-4 00:06 , Processed in 0.078514 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表