switch

比較ブロック開始

switch p1

p1 : 比較元

解説

switchcaseswendは、ブロック内に複数の条件判断と処理をまとめて
書くことができる構文です。
p1で指定する比較元のパラメーターは、変数または式を指定することができます。
switch以降は、

case 比較値

を置くことで、これ以降に「比較元」が「比較値」と同じだった場合に処理する
内容を記述することができます。
caseは、ブロック内に複数記述することができ、それぞれの比較値ごとの処理を
指定できます。caseの比較が正しい場合は、swbreakが存在するまで以降の命令を
実行します。また、caseの替わりに

default

を置くと、caseで指定したどの比較値にもあてはまらない条件の場合に
以降が実行されます。

switchブロックが終了した場合は、

swend

を必ず最後に書いておく必要があります。
以下は、switchマクロを使用したスクリプトの例です。

	a=0
	switch a	; aを比較対象とする
	case 0		; aが0だった場合
		mes "A=0"
		swbreak	; case0の条件実行終了
	case 1		; aが1だった場合
		mes "A=1"
	default		; aが0以外だった場合
		mes "A!=0"
		swbreak
	swend

この例では、変数aの内容が0か1かそれ以外かで条件分岐を行なっています。
「case 0」以降は、「swbreak」までが実行されますが、「case 1」の場合は、
「swbreak」が存在しないため、「default」以降に実行される「mes "A!=0"」も
含めて実行されるので注意してください。

関連項目

caseデフォルト比較指定
defaultデフォルト比較指定
swbreak比較実行脱出指定
swend比較ブロック終了

サンプル逆引き (3)

arusave.as
SSAVER.AS
switch.as

情報

バージョン2.61
作成日2004/03/01
著作者onitama
URLhttp://www.onionsoft.net/
備考ver2.61標準命令
タイプ内蔵命令
グループプログラム制御マクロ
hs ファイルhsphelp\i_prog.HS