スタート時に「START」、クリア時に「CLEAR」といった感じに文字を表示させようとしています。
しかし、なぜかスタート時に「CLEAR」の文字が表示されタイトルに戻ってしまいます。
クリアの条件はint blocknumberという変数を用意し、ブロックをひとつ消すごとに+1されるようにしてあります。
ブロックの数が18なので18個消した時点でclearflug = 1となるようにしてあります。
文字の表示は
というようにしてあります。また、ちゃんと初期化のための関数でclearflug を0にしているため原因がさっぱりわかりません。
一定時間文字を表示
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: 一定時間文字を表示
ここと
if(clearflug = 0){
ここが
if(clearflug = 1){
代入文になっています。
条件なら==です。Cを含めif文中に代入文が書ける言語では注意してくださいね。
プロでも間違う時のあるバグです。
デバッガを使うと間違いが検証できますよ。
[補足]
誤字ですがflug → flagだと思います。
あとflagは0/1の場合だけにしてCounterとかを使って方が良いと思います。
if(clearflug = 0){
ここが
if(clearflug = 1){
代入文になっています。
条件なら==です。Cを含めif文中に代入文が書ける言語では注意してくださいね。
プロでも間違う時のあるバグです。
デバッガを使うと間違いが検証できますよ。
[補足]
誤字ですがflug → flagだと思います。
あとflagは0/1の場合だけにしてCounterとかを使って方が良いと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。