小编wwa*_*was的帖子

在Perl中强制列表上下文

我试图理解Perl的背景,我绊倒了一块石头;

鉴于代码;

#!/usr/bin/perl

my $b = (33,22,11);
print "$b\n";

my $b = () = (33,22,11);
print "$b\n";

my @b = (33,22,11);
print "@b\n";

my @b = () = (33,22,11);
print "@b\n";
Run Code Online (Sandbox Code Playgroud)

结果是(最后一行是空白的);

 11  

 3 

 33 22 11

 <>
Run Code Online (Sandbox Code Playgroud)

由于第二个打印返回列表的长度,我假设某个地方生成了一个数组,因为标量上下文中的数组计算它的长度.但第4版似乎相信这一假设.我本来期待看到'33 22 11'印刷但没有得到任何东西.这里发生了什么事?

perl

29
推荐指数
2
解决办法
4389
查看次数

标签 统计

perl ×1