我遇到了TCL的问题。我可以添加和相乘两个整数变量。这工作得很好:司运营商没有产生任何结果
set hdsuc [expr {$hdsuccess * $hdcount}]
set hdsuc [expr {$hdsuccess + $hdcount}]
但是,由于某种原因,我不能分开他们。下列情况不工作:
set hdsuc [expr {$hdsuccess/$hdcount}]
以上返回0莫不是某些问题的设置?
我遇到了TCL的问题。我可以添加和相乘两个整数变量。这工作得很好:司运营商没有产生任何结果
set hdsuc [expr {$hdsuccess * $hdcount}]
set hdsuc [expr {$hdsuccess + $hdcount}]
但是,由于某种原因,我不能分开他们。下列情况不工作:
set hdsuc [expr {$hdsuccess/$hdcount}]
以上返回0莫不是某些问题的设置?
它正在做整数除法。您需要将其中一个参数转换为double。例如: -
set hdsuc [expr {double($hdsuccess)/$hdcount}]
+1尽管使用了“铸造”一词。这不是演员阵容,而是转换。 :-) – 2012-04-14 06:28:31
啊,你一直在救我!谢谢。 – thelazydeveloper 2012-04-14 12:31:42
我猜你正在做的整数除法,比较'expr的{1/2}'和'EXPR {1.0/2}'。我对TCL知之甚少,不知道什么是“正确”的解决方案。 – 2012-04-14 00:52:26