TCL/TK编程语法上一篇文章讲了TCL命令的处理规则,那么这篇文章就说一说TCL的三大替换和两大引用。三大替换:变量替换、命令替换、反斜线替换。两大引用:双括号引用、大括号引用。变量替换每种替换会把单词中的一些原始字符替换为另外一些值。变量替换由"$"符号引发如下:set kgrams 20expr $kgrams*2.2046#输出为44.092上面两行代码,第一行将变量kgrams赋值为20,第二行为将变量kgrams的值与2.2046相乘。其中"$kgrams"即为变量替换。变量替换的目的是取值,即将$kgrams替换为20。expr $result*$base#两个变量的值相乘,其中expr为数学运算命命令替换
命令替换是把一个单词的部分或者全部替换为一个命令的结果。命令替换通过方括号"[]"表示。set kgrams 20set lbs [expr $kgrams*2.2046]
上面代码中第二行,方括号是对命令进行取值,即取方括号内的返回值。并将值赋值给变量lbs反斜线替换
反斜线也是取值,但是反斜线取的是在TCL中具有特殊意义的字符例如"[, $, \"等等。set msg Eggs:\ \$2.18/dozen\nGasoline:\ \$2.49/gallon#输出:Eggs: $2.18/dozen# Gasoline: $2.49/gallon
上面代码中使用"\"取到了空格符、$、 换行符。下表为可反斜线替换的字符:双引号引用
TCL提供了一些方法,可以阻止解析器对$和分号等字符进行特殊处理。这些方法被称为引用。双引号引用可以取消单词和命令分隔符的特殊解释。大括号引用取消所有特殊字符的特殊解释。
双括号引用会将