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 涉及其他部分是否未執行。