我知道我可以使用 require 并以不同的方式执行此操作,但我只是在玩弄 perl 并遇到了一些我不知道如何解释的东西。
这是我的第一个脚本:
use 5.16.2;
use warnings;
sub get
{
print "hello";
}
get();
测试脚本:
use 5.16.2;
use warnings;
my $val=system('perl test.pl');
print "$val\n";
#prints: hello0, I surmised that 0 is the return code for system
我查找了如何忽略 0 并得到了一些错误的东西,但导致我这样做:
print '', system('perl test.pl');
#also prints hello0
my $val='', system('perl test.pl');
print "$val\n";
#prints: hello
这行得通,但我完全不知道为什么。我也很困惑为什么前面的那个不起作用。有人可以解释一下吗?