トピック
Maitake sora1213

GOSUBとGOTOの違いはなんですか?あとWHILEループと@とGOTOを使ったループは何が違いますか?

1そうだね
プレイ済み
返信[1]
親投稿
GOSUBとGOTO GOTOは行くだけ。GOSUBは戻ることを前提に使う [サンプル]@SUBに行った後戻ってくるのでBEEPが鳴る GOSUB @SUB BEEP @SUB PRINT"GOSUBだよ" RETURN
1そうだね
プレイ済み
返信[2]
親投稿
あ、欠陥発見。 GOSUBしないでRETURNするとエラーが出ますね。 ENDで2度@SUBに行かないように直します。 GOSUB @SUB BEEP END @SUB PRINT"GOSUBだよ" RETURN
2そうだね
プレイ済み
返信[3]
親投稿
WHILEループと@とGOTOを使ったループ WHILE 1~WEND @LOOP~GOTO @LOOP この2つは動きは同じなのでお好みで選択。 WHILEは条件を指定する機能があるので、条件で抜けたいときは推奨。
2そうだね
プレイ済み
返信[4]
親投稿
natto- natto-3030
GOTOはそのラベルに行くだけ。 GOSUBは行き先のラベルにリターンを付けるとGOSUBの次の行に戻り、そのあとを実行するって感じです
2そうだね
プレイ済み
返信[5]
親投稿
みんなが書いている通りですが、GOSUBには必ずRETURNが必要なのでGOTOの代用にはならないです。RETURNを使わずにGOSUBを何度も呼び出していると、そのうちエラーが発生するので気をつけましょう。 あとWHILEループはラベルを使う必要がないのとGOTOと違って必ずその範囲でループするというのが保証されるというのがメリットですね。GOTOの場合はどこでも飛べるので、必ずしもループを作ってるとは限らないので。
3そうだね
プレイ済み
返信[6]
親投稿
Maitake sora1213
皆さんありがとうございます
1そうだね
プレイ済み