忍者ブログ
暇人おやじの暇なつぶやき
[33] [32] [31] [30] [29] [28] [27] [26] [25] [24] [23]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

goto 行け
gosub 行って戻って来い

似ているようで違う命令
ボタンの例でも記載したように

button gosub " shori1 ",*shori1

button命令の場合gosubを記載しなければgotoが基本

button " shori1 ",*shori1


botton命令の場合gosubにあまり意味はないように感じる
というのはbuttonの待ちの仕組みと戻り場所が特殊な感があるからだ

普通gosub命令はその処理(=サブルーチン)を行いreturn命令の後に、gosubを発行した
次の行に戻る

gosub *shori1
mes "本処理1"
stop

*shori1
 mes "サブ処理1"
return


この一行目を
button gosub "ボタン" , *shori1
すると、先ほどとは逆の表示になる
しかし、ボタンを押した後では"本処理1"の表示はされない
何故か?それはボタンの待つ処理がstop命令又はプログラムの最後だからだ
つまりサブルーチンを終えて帰る場所がstopになる

次のように変更してみるとそれがよくわかる
button gosub "ボタン" , *shori1
mes "本処理1"
goto *shori9
stop

*shori1
 mes "サブ処理1"
return
*shori9
 mes "本処理9"


またこのコードではサブルーチン「shori1」が本プログラム中にある
3行目のgotoで、サブルーチンを飛び越えている
通常はgosubでのサブルーチンは本プログラム処理の最後にまとめて
記載するのがわかりやすいプログラムになる

とはいえこのbutton命令でのgosubは所謂イベントドリブンな処理が
組めるので非常に重宝することは間違いないでしょう

PR

コメント


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


トラックバック
この記事にトラックバックする:


忍者ブログ [PR]
カレンダー
08 2024/09 10
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
フリーエリア
最新CM
最新TB
プロフィール
HN:
忍者 シオ才
性別:
非公開
バーコード
ブログ内検索