2014-09-24 99 views
3

从C/C++的土地来,我很奇怪,为什么下面不工作:逻辑不操作

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

我知道如果我改变2号线到if { $a ne {} } {那么它是好的,但不能完成我的头围绕为什么“!”不起作用。

回答

5

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

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

+0

是的,你是对的,使用()将eq表达式分组解决问题。 – 2014-09-24 02:40:49