teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

回答に追記

2021/06/24 14:56

投稿

y_waiwai
y_waiwai

スコア88178

answer CHANGED
@@ -1,2 +1,24 @@
1
1
  このコードはどこに書かれてるもんでしょうか。
2
- 関数にも入ってないし、どういうふうに実行されるものかわかりません
2
+ 関数にも入ってないし、どういうふうに実行されるものかわかりません
3
+
4
+ ---
5
+ 回答じゃありませんが、まずいところを述べておきます
6
+
7
+ 1.
8
+ > float st = millis();
9
+
10
+ mills関数の戻り値はfloatじゃありません。unsigned longです
11
+
12
+ 2.
13
+ で、ここで float st= と変数定義を行ってますが、変数は定義をした{}内でしか有効ではありません
14
+ > int flag = 0;
15
+ float st,
16
+ t;
17
+
18
+ で定義してるstと、millisの代入してるstとは別の変数となります
19
+
20
+ 3.
21
+ んでもひとつ、関数の中で定義される変数は、その関数が終わると消滅します。
22
+ なので、flagという変数は、loop関数が実行されるとき、常に0となってます
23
+
24
+ 関数から抜けて消滅してもらっては困る変数は、グローバル変数としましょう