Go Down

Topic: StringToHex Funktion (Read 1 time) previous topic - next topic

Serenifly

#30
Jan 13, 2018, 04:17 pm Last Edit: Jan 13, 2018, 04:18 pm by Serenifly
Schau dir die Doku der String Klasse an

Und in C++ gibt es anders als in C# keine Properties.

michael_x

Quote
Zum Beispiel bei 49f0
4 xor 9 xor f xor 0 = [ 
In C würde man das eher so schreiben

'4' ^ '9' ^ 'f' ^ '0'  ist  0x34 ^ 0x39 ^ 0x66 ^ 0x30 ergibt  0x5B  ist  '['

Wenn du tatsächlich die überflüssige String Klasse verwenden willst, such die charAt Methode

Oder mach es gleich richtig:
Code: [Select]

char checksum(const char* befehl) {
  char result = 0;
  byte len = strlen(befehl);
  for (byte i = 0; i < len; i++)  result ^= befehl[i];
  return result;
}
void setup() {
   Serial.begin(9600);

   if ( checksum("49f0") == '[' ) Serial.println ("Hurra");

}
void loop() {}

Go Up