第四课
TCL语言
- simple text out
puts "Hello"
puts {Hello}
用大括号则文本不转义
**有的时候文本会出现乱码^M,是因为unix和windows对换行符处理不同,lunix用\n换行,windows用\r\n。推荐用ultraedit,可以自动替换最后的换行符。
tcl每一行的结束用回车标志,也可以用分号
- variables
set a 5
set b {a b c d}
set b 1.25
set c "Hello"
与c语言等有强制类型的语言不同,tcl是根据上下文分析类型的语言。
- substitutions
set msg "a is $a;the square of a is [expr $a * $a]"
用$a代替变量,要使用表达式必须要用[expr]包含,[]表示中括号内不是一个tcl命令
若把这句代码的""改成{},则[expr]将不会被识别为命令,只是单纯的文本
[expr]的作用
首先设置a和b的值
set a 10
set b "10"
若要通过b访问a的值,则需要使用[expr]
puts $$b ->输出的是字符$a
puts [expr $$b] ->输出的是10
eval命令也可以起到相似的效果