Skip to content

SWITCH 分支选择

该指令用于多分支选择控制。SWITCH 语句以 ENDSWITCH 为结尾,与 CASE、BREAK、DEFAULT 等语句配合使用。SWITCH 后面的变量与 CASE 值进行比较,执行与之匹配的 CASE 语句块,如果没有匹配的 CASE,则执行 DEFAULT 语句块。

指令格式

SWITCH(Var) ... CASE Value: ... BREAK ... DEFAULT: ... ENDSWITCH SWITCH(变量) ... CASE(常量): ... BREAK ... DEFAULT: ... ENDSWITCH (备注:带 [] 参数为可选参数)

参数详细说明

参数类型说明默认值/备注
Varint / string用于与 CASE 值比较的变量
CASE Valueint / string 常量与 SWITCH 变量比较的常量值,类型必须一致
BREAK-跳出 SWITCH 语句,执行 ENDSWITCH 下一行可选
DEFAULT-当所有 CASE 均不匹配时执行的默认语句块可选,位于 SWITCH 最下方

应用示例

示例 1:

estun
SWITCH Var
    CASE 1:
        MovJ{P=t_l.P0}
        BREAK
    CASE 2:
        MovJ{P=t_l.P0}
        BREAK
    DEFAULT:
        MovJ{P=t_l.P0}
        BREAK
ENDSWITCH

说明:

  • SWITCH 后面变量支持 int 和 string 类型
  • 如果满足条件的 CASE 后面没有 BREAK,将会执行后续的 CASE 语句且不会判断 CASE 的值,直到遇到 BREAK 或者 ENDSWITCH 结束运行
  • DEFAULT 指令必须位于所有 CASE 语句之后

ESTUN Robotics — ER 系列机器人编程语言指令参考