私はいくつかの変数を交換したいarduino IDEにプログラムを書いています。あなたがarduinoを知らないのであれば、それは基本的にC++で書かれています。背景情報の温度変数が配列から正しい値を割り当てていない
ビット:
- 個は
- 個 "n" は、 "1"、 "2"、...、 "5" の文字列が返された2Dアレイです、又は "6"
- Serial.println(MSG)は、単に印刷機能
は、ここでは、コードされる:
String temp = Pieces[piece][0];
Serial.println(temp);
Serial.println(Pieces[piece][0]);
コードは同じ値の2戻り、しかしそれは実際に返すことであるべきである。
""
"n"
最初の値も同様であるNなければならないが、それは単に空白です。ここでは個が初期化された方法です。
String Pieces[27][6] =
{
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
{"t", "t", "t", "t", "t", "t"}
};
問題は、配列が大きすぎるということですので、私は代わりに、文字列の文字にそれを変更しようとしましたが、その動作していないました。
相続人は、それが今のように見えるもの:
char Pieces[27][6] =
{
{"n", "n", "n", "n", "n", "n"},
{"n", "n", "n", "n", "n", "n"},
...
{"t", "t", "t", "t", "t", "t"}
};
そしてHERESに誤りのは、私を与える:
error: too many initializers for 'char [6]'
誰かが私はそれを正しく初期化するのに役立つだろうか?
'ピース'セットはどのように設定され、 'ピース'配列ディメンションの境界は何ですか? – twain249
私は質問を編集して、どのように作品が見えるかを示します。 – Scurb
のコードがうまくいるようです。メモリ不足の問題やシリアルインターフェイスの問題など、他の要因を除外しましたか?小さなアレイで試しましたか?一次元配列で試しましたか? –