证明空列表在 SCALAR 上下文返回 undef
时间:2011-03-01
来源:互联网
- #!/bin/env perl
-
- use strict;
- no warnings;
-
- my $i = (1, 2, 3, ());
- my $j = (1, 2, 3, );
- my $k = (1, 2, 3, func());
-
- print "\$i = $i\n";
- print "\$j = $j\n";
- print "\$k = $k\n";
-
- my @ar = (1, 2, 3, func());
- print "Size of \@ar: ", scalar(@ar), "\n";
-
- my @ar2 = (1, 2, 3, func2());
- print "Size of \@ar2: ", scalar(@ar2), "\n";
-
- sub func
- {
- return;
- }
-
- sub func2
- {
- return undef;
- }
作者: 黑色阳光_cu 发布时间: 2011-03-01
错了。
建议学学 C 语言,看看 Perl 解释器的实现。
perldoc -f wantarray
perldoc -f return
上面两段文档可以解释除 my $i = 这一行之外的其余所有代码。
这一行代码的解释在下面:
复制代码
建议学学 C 语言,看看 Perl 解释器的实现。
perldoc -f wantarray
perldoc -f return
上面两段文档可以解释除 my $i = 这一行之外的其余所有代码。
这一行代码的解释在下面:
- D:\MoChou>perl -MO=Deparse -e "$i = (1,2,3,())"
- $i = ('???', '???', '???', ());
- -e syntax OK
-
- D:\MoChou>
作者: flw 发布时间: 2011-03-01
回复 黑色阳光_cu
证明这个,只需要一行就够了:
复制代码
证明这个,只需要一行就够了:
- perl -E 'my $i = (); say "defined" if defined $i'
作者: Monox 发布时间: 2011-03-01
QUOTE:
错了。
建议学学 C 语言,看看 Perl 解释器的实现。
perldoc -f wantarray
perldoc -f return
上 ...
flw 发表于 2011-03-01 22:49
建议学学 C 语言,看看 Perl 解释器的实现。
perldoc -f wantarray
perldoc -f return
上 ...
flw 发表于 2011-03-01 22:49

我主要就是测试 my $i = (1, 2, 3, ()) 其它都是为了对比而已。
作者: 黑色阳光_cu 发布时间: 2011-03-02
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28