逻辑非运算符

时间:2014-09-24 01:44:53

标签: tcl

来自C / C ++的土地,我想知道为什么以下不起作用:

set a 111
if {! $a eq {} } {
  puts hi
}

我知道如果我将第二行更改为if { $a ne {} } {那么它很好,但无法解决为什么"!"不起作用。

1 个答案:

答案 0 :(得分:6)

这是因为在Tcl中,!的优先级高于ne,因此首先对其进行评估。

您可以查看this link以获取Tcl运算符优先级的完整列表。