Einzelnen Beitrag anzeigen

valon

Registriert seit: 27. Sep 2004
86 Beiträge
 
#1

Stringbearbeitung

  Alt 26. Jan 2005, 12:34
Hallo Leute! Ich habe da ein kleines Problem!

Ich bekomme einen String von der seriellen Schnittstelle ,der Form:

" 11 AC 33 44 00 " .
11,AC,33,44 sind werte die ich auslesen muss, und die immer 2 hex Zeichen lang sind. 00 kennzeichnet das Ende der Werte. es können mehrere Werte drinstehen. z.b "11 AC 33 44 1F 00". Die Anzahl der Werte ist also variabel.

wie kann ich den Index herausfinden, bis wohin die Werte gehen.
im beispiel oben wäre das der Index vom wert 4.

Da aber ein String auch so ausehen könnte "11 10 01 11 00" , hab ich dann ein Problem
den, die Folge 00 kommt im String 2 mal vor "10 01" und am ende 00.
Er würde mir dann den falschen index zurückliefern, da er die Folge 00 im "10 01" als Ende interpretiert.

Hat jemand ne Idee wie ich da eine Funktion implementieren könnte , die das richtige Ende erkennt und den richtigen Index liefert?

Ich hoffe ich habs euch einigermaßen Verständlich rüberbringen können.
Danke
  Mit Zitat antworten Zitat