for

指定回数繰り返し開始

for p1,p2,p3,p4

p1    : 変数名
p2(0) : 初期値
p3(0) : 終値
p4(1) : 増分

解説

パラメーターとして変数名、初期値、終値、増分などを指定すると、fornextの間を指定回数繰り返します。
カッコ内は省略した場合の値です。変数名は省略できません。
指定された変数をカウンターとして使用し、初期値から始まって、1回繰り返すごとに増分を足していきます。終値に達した時点で、繰り返しから抜けます(終値はループに含みません)。
最初から終値の条件が満たされている場合は、繰り返しを実行しません。
また、_continue_breakマクロによって再開、脱出が可能です。

	for a,0,5,1
	mes "A="+a
	next    ; aが0から4の間(5回)繰り返す

この例では、変数aは0,1,2,3,4と5回繰り返してループを終わります。
増分にマイナス値を指定することも可能です。

	for a,5,0,-1
	mes "A="+a
	next    ; aが5から1の間(5回)繰り返す

この場合、変数aは5,4,3,2,1と5回繰り返してループを終わります。

forマクロで指定され初期値及び、終値は必ず整数を指定する必要があります。
他の型を指定した場合は、エラーとなります。
また、増分や終値の指定によっては無限ループになる可能性がありますので注意してください。

fornext制御は、プリプロセッサのマクロ機能を使って実現されています。
CやJava等に近い記述をしたいような場合にお使い下さい。
初心者の方には、repeatloop命令か、if命令による繰り返し記述を推奨します。forマクロは、 内部でマクロ展開後に特殊なプログラム制御命令exgotoを生成します。

関連項目

_continueマクロループをやり直す
_breakマクロループを脱出する
next指定回数繰り返し終了
exgoto指定ラベルに条件ジャンプ

サンプル逆引き (11)

arusave.hsp
d3m_techdemo.hsp
demo.hsp
http.hsp
macro.hsp
moji.hsp
multitouch2.hsp
multitouch3.hsp
picfont.hsp
sapi_speech.hsp
xsample_verge.hsp

情報

バージョン3.4
作成日2013/12/09
著作者onitama
URLhttp://hsp.tv/
備考ver3.4標準命令
タイプ内蔵命令
グループプログラム制御マクロ
対応環境
  • Windows 版 HSP
  • コマンドライン版 HSP
  • HSPLet
hs ファイルhsphelp\i_prog.hs