Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Zeichenkette aufsplitten Kategorie: Programmierung Basic (von markus - 9.02.2009 22:56)
Als Antwort auf Re: Zeichenkette aufsplitten von Wolfgang - 13.09.2008 22:49

> > Hallo zusammen,
> >
> > ich stehe im Moment genau vor einer ähnlichen Aufgabenstellung. Ich möchte einen
> > seriell eingelesenen String (kommt von einer Messeinheit im 60 Sekunden-Takt mit Semikolon
> > als Trennzeichen) zwischen einzelnen Werten aufteilen und zwecks Weiterverarbeitung im
> > Programm in Variablen speichern.
> >
> >
> > Wäre toll, wenn es hier schon eine Lösung gibt. Ich komme im Moment mit der Doku nicht weiter.
> >
> > Viele Grüsse
> > aus Hessen
> > Stephan
>
>
> Hallo,
>
> hier ein paar Prozeduren, die ich für so etwas geschrieben habe:
> Die Sub GetValWord liest die erste Zahl aus dem String
> und löscht den ersten Teil des Strings bis zum Ende der Zahl.
> Durch wiederholtes Auslesen kann man so alle Zahlen schrittweise herausholen.
>
> Hop it helps!
> Wolfgang
>
> Sub Str_Delete (ByRef Strg As Char, Pos As Word, I As Word)
>   'Deletes in Strg at Pos I Chars
>   Dim n As Byte
>   n = Str_Len (Strg)
>   Do While Pos+I <= n
>      Strg (Pos) = Strg (Pos +I)
>      Pos = Pos +1
>      End While
> End Sub
>
>
> Sub GetValWord (ByRef InpStrg As Char) As Word
>   'Gets the first WordVal from a string And removes it
>   Dim val As Word
>   Dim i, n As Byte
>   Dim c As Char
>   val = 0
>   n = Str_Len (InpStrg)         ' String-Funktionen funktionieren nicht in log Ausdrücken!
>   i = 0
>
>   'zuerst Anfang der Zahl suchen
>   c =        InpStrg(i)         ' String-Funktionen funktionieren nicht in log Ausdrücken!
>   Lab SuchLabel
>   Do While ((c>&H39) Or (c<&H30)) And (i >     i=i+1
>     c=InpStrg(i)
>     End While
>
>   'Jetzt Ende der Zahl suchen
>   Do While (c<=&H39) And (c>=&H30) And (i >          val = 10*val +InpStrg(i)-&H30
>          i=i+1
>          c=InpStrg(i)
>          End While
>   Str_Delete (InpStrg, 0, i)
>   Return val
> End Sub
>

Hallo

Was bedeutet

-->' String-Funktionen funktionieren nicht in log Ausdrücken! <--

das es beim Compelieren zu problem kommt?
die hätte ich nämlich.

was kann ich tun das es funktioniert?

GruÃ?

Markus


    Antwort schreiben


Antworten: