arduino, Funktion char-array zurückgeben
_10_11.ino: In function 'void loop()':
_10_11:73: error: initializer fails to determine size of 'results'
_10_11.ino: In function 'char getData()':
_10_11:160: error: invalid operands of types 'const char*' and 'const char [5]' to binary 'operator+'
Kurzum, ich habe eine Funktion char getData()
gibt char output[50] = "1: " + cmOne + " 2: " + cmTwo + " 3: " + cmThree + " 4: " + cmFour;
wo int cmOne, cmTwo, cmThree, cmFour
.
In-Schleife rufe ich:
char results[] = getData();
client.println("1: %i", results[0]);
client.println("2: %i", results[1]);
client.println("3: %i", results[2]);
client.println("4: %i", results[3]);
Ich weiß, dass ich falsch Liege mit meinen Daten-Typen, Zuordnung etc, aber bin abit off mit, wie zu tun ist es am besten, irgendwelche Vorschläge??
- Bitte entscheiden Sie sich. Ist diese Frage zu C oder um C++?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dass das nicht möglich ist, erstellen Sie eine Feste Größe-array und übergeben Sie an die Funktion als Zeiger -, und initialisieren Sie es in der Funktion
und natürlich, wenn das array größer ist nur
char results[A_BIGGER_SIZE];
Angenommen, dass die Daten legt einfach einen string
"ABC"
imresult
array würde es Aussehen wiechar *
, und es nicht zugeordnet werden kann überall, die Sie zuordnen können, die Elemente aber.