SELECT CASE 构造

select case 构造根据 select case 语句中的标量表达式的值有条件地执行一个构造或语句块。该控制结构可以被认为是计算的 goto 的替代。

[name:] SELECT CASE (expr)
[CASE (case-value [, case-value] ...) [name]
   block]...
[CASE DEFAULT [name]
   block]
END SELECT [name]

哪里,

  • name - select case 构造的名称(可选)
  • expr - 整数,逻辑或字符类型的标量表达式(括在括号中)
  • case-value - 括在括号中的一个或多个标量整数,逻辑或字符初始化表达式
  • block - 零个或多个语句或结构的序列

例子:

! simplest form of select case construct
select case(i)
case(:-1)
    s = -1
case(0)
    s = 0
case(1:)
    s = 1
case default
    print "Something strange is happened"
end select

在这个例子中,(:-1) case 值是一个值范围匹配所有小于零的值,(0) 匹配零,(1:) 匹配所有大于零的值,default section 涉及其他部分是否未执行。