回答編集履歴
1
追記
test
CHANGED
@@ -3,3 +3,37 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
あまりにめちゃくちゃ...
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
---
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
カンマ演算子は、`,`で区切られた式を左から順に評価(実行)し、最後(右端)の結果を返します。
|
14
|
+
|
15
|
+
なので、
|
16
|
+
|
17
|
+
`if(V1a==0 && V2a>=1,i1++){`
|
18
|
+
|
19
|
+
では、`V1a==0 && V2a>=1`を比較して結果を捨て、`i1++`でi1の値が0か0以外かでifの分岐を行います。
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
` x1[i1] = micros();`
|
24
|
+
|
25
|
+
Arduino dueではunsigned intは32bit幅ですから、unsigned longの値をそのまま代入しています。
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
` if(e1=1,e1<numa,e1++){`
|
30
|
+
|
31
|
+
先程と同様カンマ演算子。`e1=1`で**e1に1を代入**して、`e1<numa`の結果を捨て、e1の値で分岐...これは先程1を代入したので1なので必ず真の分岐。
|
32
|
+
|
33
|
+
` x1[e1]=x1[e1+1]-x1[e1];`
|
34
|
+
|
35
|
+
e1は2なので、**常に**x1[2]=x1[3]-x1[2];の演算をします。
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
これはあなたのやりたかったことでしょうか?
|