プレイ日記
bはかせ kojimadaiti
PRINT命令の文字列の後にセミコロンを 入れるとタイプミスマッチエラーが。 何故なのか…
6そうだね
プレイ済み
返信[1]
親投稿
bはかせ kojimadaiti
タイプミスマッチって 変数の型が一致しなかったときに 発生するエラーって書いてあるんです。 セミコロンをつけただけで 変数には触ってないんだけどなぁ…
1そうだね
プレイ済み
返信[2]
親投稿
いや、たぶんそこではなくて CATE OHX,OHYだとおもいますけど 全部見えていないからわかりませんが・・ LOCATE、ですよね? なにかスペル間違えたとか
2そうだね
プレイ済み
返信[3]
親投稿
BASIC 内で PRINT命令後に;を使ううなら PRINT"な"; PRINT"に" みたいに使うのが一般的だと、、。「なに」とPRINTされます。
2そうだね
プレイ済み
返信[4]
親投稿
bはかせ kojimadaiti
あ、そのCATEは プログラム画面を横にスクロールできるように しているのでそのためですね。 分かりづらくてすみません。 あ、セミコロンについてですね。 確かに普通はそういう使い方をするんですが、 今、自分が作っているこのプログラムに セミコロンをつけないままPRINT命令を 使うと、自動で改行されてしまい 画面の一番下に自機を移動させた時に 上にバーってなっちゃうんです。 (↑後に画像添付します)
0そうだね
プレイ済み
返信[5]
親投稿
bはかせ kojimadaiti
【上にバーってなっちゃうの画像】
0そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
ELSEIFの構文チェックに引っかかっているだけなのでセミコロンの後にコロンを入れると大丈夫だと思います。
4そうだね
プレイ済み
返信[7]
親投稿
MIKI ifconfig
コロンが足りないのね if 1 then ?"1";else ? "0"; はok if 1 then ?"1";elseif 0 then ?"0"; は type mismatch if 1 then ?"1";:elseif 0 then ?"0"; は ok
3そうだね
プレイ済み
返信[8]
親投稿
りょう RYO_NAK
単純にセミコロンの後で命令を区切ってないからじゃないですかね?
2そうだね
プレイ済み
返信[9]
親投稿
bはかせ kojimadaiti
お、できました。 セミコロンとELSEIFの間にコロンが 必要だったんですね… 知りませんでした。 皆さんコメントありがとうございました。
1そうだね
プレイ済み
返信[10]
親投稿
otta777 otta777a
セミコロンを付けたことによってそれ以降のELSEIFを数値変数として 一緒に表示しようとしてType Mismatchになっていると思います。 コロンを省略する場合は気をつけないと思わぬところでバグの 原因となるので注意しましょう。
3そうだね
プレイ済み
返信[11]
親投稿
MIKI ifconfig
else は予約語で elseif は予約語じゃないらしいけど、 その割には elseif は変数として使えない(代入できない) なんとも中途半端な・・・
2そうだね
プレイ済み