Frank wrote:
> hallo,
> zuerst möchte ich mich entschuldigen als Ausländer es ist nicht einfach
> mich
> klar auszudrücken.
> Ich fange jetzt vorne an. Ich bekomme einen String,ich zerlege den
> String und ich muss jedes Teil mit einem Bereich vergleichen. Falls der
> Bereich stimmt, soll ich das Teil bearbeiten und wenn nicht soll ich der
> Fehler signalisiert.
> ZB Der String besteht aus:"Name ID Länge Message"
> Name kann COMD oder RESQ sein
> ID soll 0 -4294967295
> Länge soll zwischen 0-8 sein
> Message soll 0-255 sein
> ich habe schon den String zerlegt und jedes Teil in einem zwei
> dimensionalen Array zugewiesen.
> Ich hoffe, dass ich mein Problem jetzt klar formuliert.
Aaaah, ich glaube ich weiß wo es hakt. Wenn du mit "String" tatsächlich
einen String aus Zeichen (chars) meinst, dann musst du die Variable mit
viel mehr als 4 Zeichen auslegen. Des weiteren musst du den String an
den Grenzen aufteilen und als Nächstes in Zahlen umwandeln (Zumindest an
den Stellen, wo du Zahlen erwartest).
Und dann erst, hast du die ID, Länge und Message so umgewandelt, dass du
sie als Zahl behandeln kannst im Compiler.
Du brauchst also einen kleinen Parser. Funktionen hierfür sind u.a.
strtok, strtoul (zum umwandeln von 32bit unsigned werten) und ein paar
schleifen ;)