附录
数值计算
对两个值做运算,并把结果写入 <$CALCRESULT>。
命令用途
CalcVal 用于对两个值做运算,并把结果写入 <$CALCRESULT>。
它适合处理临时数值、字符串拼接式加减和时间秒数偏移,不需要先准备专门返回变量。
命令名
CalcVal
调用格式
CalcVal <值1> <操作符> <值2>
参数说明
| 参数 | 必填 | 说明 |
|---|---|---|
值1 | 是 | 左侧参与运算的值,可以是常量、变量或标签结果。 |
操作符 | 是 | 支持 +、-、*、/、=;引擎也支持 % 取模。 |
值2 | 是 | 右侧参与运算的值。 |
返回或影响
- 结果会写入专用变量
<$CALCRESULT>。 - 当参与运算的是字符串或时间值时,通常只应使用
+、-。 - 当参与运算的是时间值时,时间偏移单位按秒处理。
示例
普通数值计算
#ACT
CalcVal <$STR(M1)> + 5
SendMsg 5 "计算结果:<$CALCRESULT>"
这段写法会把 M1 当前值加 5,然后把结果从 <$CALCRESULT> 里继续取出显示。
计算到期后的剩余秒数
#ACT
CalcVal <$TIMESTAMP> + 60
SendMsg 5 "60 秒后的时间:<$CALCRESULT>"
这类写法适合直接对当前时间做秒数偏移。
时间格式转换
#ACT
CalcVal $INTS22 ~ 0 // ~符号,表示将$INTS22转换为普通的时间格式,专用
该写法会把 $INTS22(时间戳)转换为普通的时间格式文本。
注意事项
<$CALCRESULT>会被下一次CalcVal或其他同类结果变量写法覆盖,连续使用时要及时转存。- 如果你需要把结果直接写入某个指定变量,而不是走
<$CALCRESULT>,更适合用Calc。 - 字符串和时间场景下不要盲目使用乘除,优先只用加减。
