下表列出了所有Tcl语言支持的逻辑运算符。假设变量A=1和变量B=0,则:
| 运算符 | 描述 | 例子 | 
|---|---|---|
| && | 所谓逻辑与运算符。如果两个操作数都非零,则条件变为真。 | (A && B) 为 false. | 
| || | 所谓的逻辑或操作。如果任何两个操作数是非零,则条件变为真。 | (A || B) 为 true. | 
| ! | 所谓逻辑非运算符。使用反转操作数的逻辑状态。如果条件为真,那么逻辑非运算符为假。 | !(A && B) 为 true. | 
试试下面的例子就明白了所有Tcl语言提供的逻辑运算符:
#!/usr/bin/tclsh
set a  5
set b 20
if { $a && $b } {
  puts "Line 1 - Condition is true\n"
}
if { $a || $b } {
	puts "Line 2 - Condition is true\n"
}
# lets change the value of  a and b 
set a  0
set b 10
if { $a && $b } {
	puts "Line 3 - Condition is true\n"
} else {
 	puts "Line 3 - Condition is not true\n" 
}
if { !($a && $b) } {
	puts "Line 4 - Condition is true\n" 
}
	当编译和执行上面的程序,会产生以下结果:
Line 1 - Condition is true Line 2 - Condition is true Line 3 - Condition is not true Line 4 - Condition is true