无效的裸字错误

在 Tcl 本身中,不需要引用由单个单词组成的字符串。在 expr 计算的表达式字符串的语言中,所有操作数必须具有可识别的类型。

编写的数字操作数没有任何装饰:

expr {455682 / 1.96e4}

布尔常量也是如此:

expr {true && !false}

识别 Tcl 变量替换语法:操作数将设置为变量的值:

expr {2 * $alpha}

命令替换也是如此:

expr {[llength $alpha] > 0}

操作数也可以是数学函数调用,括号内有逗号分隔的操作数列表:

expr {sin($alpha)}

操作数可以是双引号或括号字符串。双引号字符串将被替换,就像在命令行中一样。

expr {"abc" < {def}}

如果操作数不是上述操作数之一,则是非法的。由于没有提示显示它是什么类型的提示,expr 发出一个赤字错误信号。