为什么 Perl 有“elsif”而不是“elseif”?
我正在做这样的事情:
$somevariable = 0;
if ($idcount==5)
{
# Do something
if (somestatement is true) # 1
{
$somevariable = 1;
}
}
elsif ($idcount > 1 && somevariable = 0)
{
# Do something else here
}
代码永远不会出现在 elsif 语句中。在这种情况下
idcount
实际上是 5,所以它涉及到第一个 if 语句。但内在if
陈述 (1) 不正确,所以 $somevariable
仍然是 0。因为 idcount
是 5,应该是 elsif
以及自 $idcount
大于 1 且 $somevariable
还是0。也许我只是累了,没有看到明显的东西。
最佳答案
不,任何在 elsif
中的东西只有在之前的 if/elsif 条件都不为真时才有机会被执行,这就是它的“其他”部分。
如果您希望两者都被评估,只需将其设为 if
而不是 elsif
.
关于perl - elif 在 Perl 中是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/659553/