对于TCL来说,其实并没有自己的数学运算方法,而是使用了C的计算功能,在TCL进行计算的时候,使用expr来调用如expr 7.2/4
[ppcorn@localhost ppcorn]$ cat math1.tcl
#!/usr/bin/tclsh
set value [expr 7.2/4]
puts $value
[ppcorn@localhost ppcorn]$ ./math1.tcl
1.8
上面的程序计算了7.2除以4的结果为1.8,请特别注意中括号[]的用法,它表示括号内内容的值。此方法以后我们会频繁的用到。在这个程序中,就是把1.8赋值给value,然后输出value的值。
再看一个程序
[ppcorn@localhost ppcorn]$ cat math2.tcl
#!/usr/bin/tclsh
set value [expr 5/4]
puts $value
set value1 [expr 5.0/4]
puts $value1
value和value1分别得到的值是多少?
可能有人会脱口而出,都是1.25,那么看一下实际效果呢?
[ppcorn@localhost ppcorn]$ ./math2.tcl
1
1.25
或许有人会觉得奇怪,为什么呢?这就是因为expr在计算的时候,会认为5是整数类型,4也是整数类型,自然结果就是整数类型,为1,而5.0是浮点数类型,4是整数类型,这样计算的结果取精确度高的,为浮点数,于是得到了1.25。
那么如何