华域联盟 perl perl 中的or与||的区别

perl 中的or与||的区别

来看看下面的代码会输出什么?

复制代码 代码如下:

my $a = 0;

$a = $a or 1;

print $a, "\n";

$a = $a || 1;

print $a, "\n";

输出:
0
1
为什么呢?因为||, =, or 这三者优先级从左至右逐渐降低。
所以,这样写可以:
chomp(my $filename = shift( @ARGV ) || <STDIN>);

这样则不行:
chomp(my $filename = shift( @ARGV ) or <STDIN>);
会提示如下错误:
Can't modify logical or (||) in chomp

本文由 华域联盟 原创撰写:华域联盟 » perl 中的or与||的区别

转载请保留出处和原文链接:https://www.cnhackhy.com/76735.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部