#!/usr/bin/perl
$v = "test";
$v |= "best";
print $v;
$v = "test" | "best";
print $v;
如何OR-ING即将在这里是不是在第二种情况下清晰(第一种情况与空O形环似乎是清楚的)?perl的逻辑或运算
#!/usr/bin/perl
$v = "test";
$v |= "best";
print $v;
$v = "test" | "best";
print $v;
如何OR-ING即将在这里是不是在第二种情况下清晰(第一种情况与空O形环似乎是清楚的)?perl的逻辑或运算
|
是逐位operator和你wan't短路字符串变量,从而使用逻辑OR ||
$v ||= "best";
逐位计算第一字符"t" | "b"
是相同
# 116 | 98 = 118 ("v")
print chr(ord("t") | ord("b"));
两者都是二进制(取两个参数)的运营商,既不一元(以一个参数)。我认为你的意思是“|”是一个按位运算符(按位或),而“||”是一个逻辑运算符(逻辑或)。 –
@DaveSherohman tnx纠正。 –
您可能对此感兴趣:http://perldoc.perl.org/perlop.html#Logical-Defined-Or – squiguy
你能解释一下什么是不明确?注意'|'和'| ='不是逻辑或运算符,它们是按位或运算符,完全是另一回事。 – ysth