したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

研究日誌

11管理人:2013/10/09(水) 07:12:44
【共通】構文チェック

ちょっとtget命令のテストをして気になった構造化の構文チェック
について書きたいと思います。

BASIC!がインタープリターだからかもしれませんが、どうも構造化
されていると構文チェックが甘いみたいです。

なにが甘いのかというとif then,else,endifの構造が多少複雑になると
チェックできずにエラーとしてくれないという事象です。

例えば、

IF r1$ = "list"
【略】
if r2$ = "" then
【略】
print "gyol:";gyol
for i=1 to gyol
【略】
next i
else
if r3$ = "" then
   【略】
for i=vr2 to gyol
  【略】
next i
else
  【略】
for i=vr2 to vr3
  【略】
next i
endif ⇒⇒⇒⇒⇒※ このendifの記載を漏らした
endif

このような、多少複雑なif then,else,endifとfor nextループが
構造化されている場合でBASIC!ではそのまま実行されてしまいます。

特に実行時エラーにもならず、想定した結果ではない不思議な結果に
なってかなり悩みました。

if then,else,endifのチェックはきちんとやった方が安全だと思います。

そもそも、チェックは当たり前という話もありますが…汗


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板