教材:陈涛 Tcl 编程初步 tcl/tk入门经典(2)
1.除了自加自减,tcl的数学和逻辑运算符,运算符优先级,数学函数与相似。
2.自加自减速运算用incr命令完成
incr varName ?step? 没有后一个参数表示加1,incr a -n表示减n。
3.expr命令将它的参数做表达式处理。expr 4+2;expr log10(100);
4.if语句
这个命令会将他的第一个参数当做表达式
if {x<10} {set a=x}
5.在tcl8.5中,当表达式解析器遇到像sin($x),log10($y)等数学函数时,它会将函数替换为对tcl::mathfunc命名空间中一个普通命令的调用。
例 expr {sin($x+$y)}和expr {[tcl::mathfunc::sin [expr {$x+$y}]]}一样。
如果数学函数有多个参数
例 expr pow($x+2,$y/2)和expr {[tcl::mathfunc::pow [expr {$x+2}] [expr {$y/2}]}
6.tcl允许定义自己的数学函数,只在tcl::mathfunc命名空间中创建新的命令就可
例 proc tcl::mathfunc::avg {args} {
if {[llength $args] == 0} {
return -code error "too few argurments to math function avg."
}