>>536
ものぐさボウズに代わって調べてみた。aの値の範囲により変わる。

aが1か2にしかならないのなら、どちらの方法でも速度は変わらない。
aが1と2以外の値(0,3,4,5…)にもなるのなら、後者のほうが速くなる。


速度を気にするなら、switchマクロは使うべきではないが、
switchマクロがどう展開されるか気になるなら、プリプロセッサ命令
#cmpopt ppout 1
をスクリプト先頭に書いて、出力されるファイルhsptmp.iを確認すれ。