Ich habe folgendes:Expression muss ein modifizierbar lvalue sein (wenn an ein Array zu anhängen versuchen)
uint16_t Hitcount[64]; //64-byte array buffer
uint16_t Br;
int StdWidth = 38;
int widthpad = 8;
int W;
uint16_t blocks;
if (W <= (StdWidth + widthpad) && W >= (StdWidth - widthpad) && blocks == 1) {
Hitcount += Br;
}
Mein Ziel ist es „Br“ auf dem Feld „HitCount“, wenn „W“ appenf ist innerhalb ein bestimmter Bereich. "Hitcount" gibt jedoch den Fehler "Expression muss ein modifizierbarer Lvalue sein". Habe ich meine Datentypen und alles in Ordnung?
Entschuldigung, wenn dies zu anderen Fragen, die gepostet wurden, zu nah ist. Ich schaute sie an, konnte sie aber mit meinem begrenzten Wissen nicht auf dieses Szenario beziehen.
Was erwarten Sie 'Hitcount + = Br;' zu tun? – NathanOliver
Zunächst sind Ihre Kommentare irreführend. Es ist ein 128-Byte-Array-Puffer. Zweitens, wenn Sie etwas an das Array anhängen möchten, müssen Sie den Wert eines bestimmten Elements davon ändern, nicht das Array-Objekt selbst inkrementieren - es ist sinnlose Operation. – SergeyA
Zum Anhängen von Br an das Array Hitcount, wie hier beschrieben: https://www.arduino.cc/en/Tutorial/StringAppendOperator – LegitimateWorkUser