Char vergleichen
-
Hallo,
Kann mir jemand sagen wie ich 2 char-variable vergleichen kann?
Ich möchte z.B.unsigned char TxBuffer[10]; unsigned char RxBuffer[10];
vergleichen.
Danke
-
if(TxBuffer[0] == RxBuffer[0]) { }
für das komplette Array halt entweder eine Schlaufe und Zeichen für Zeichen vergleichen,
oder die Daten als String behandeln und
http://www.google.ch/#hl=de&q=string+vergleichen+c%2B%2B&aq=f&aqi=g1&aql=&oq=&gs_rfai=&fp=3bd47b38938e51d5
-
Hallo,
Weiter ist auch memcmp möglich.
-
- C-style: memcmp
- C++style : std::equal
-
Perfekt. Habe es mit einer Schleife gemacht. Hat funktioniert.
Dankefor (int s = 0 ; s < 10 ; s++){ if (TxBuffer[s] == RxBuffer[s]){ vergleich = 0; } else { vergleich = 1; } }
-
Hallo,
Vorsicht! In deiner Schleife läufst du Gefahr den Zustand "vergleich" wieder zu überschrieben. Besser du brichst die Schleife ab sobald ein Zeichen nicht korrekt ist.
VlG
-
RandomAccess85 schrieb:
Hallo,
Vorsicht! In deiner Schleife läufst du Gefahr den Zustand "vergleich" wieder zu überschrieben. Besser du brichst die Schleife ab sobald ein Zeichen nicht korrekt ist.
VlG
Also mit return abbrechen
for (int s = 0 ; s < 10 ; s++){ if (TxBuffer[s] == RxBuffer[s]){ vergleich = 0; } else { vergleich = 1; return; } }
oder dann s auf 10 hochsetzen?
for (int s = 0 ; s < 10 ; s++){ if (TxBuffer[s] == RxBuffer[s]){ vergleich = 0; } else { vergleich = 1 s = 10; } }
-
Hallo,
return wirft dich glaub ich direkt aus der Funktion. break sollte hier besser funktionieren.
VlG