Seite 1 von 1

VB code in PB

Verfasst: 24.09.2005 09:30
von sen-me
wie kann man dies in PB code übersetzen?

Code: Alles auswählen

Dim Symb
 Dim SymbNo As Integer
 Dim i As Integer
 If Trim(strLine) <> "" Then
  Symb = Scan(strLine)
  Select Case LCase(Symb(0))
   Case "dim"
    ' Hier Programmteil DIM
   Case "if"
    ' Hier Programmteil IF ... THEN
   Case "goto"
    ' Hier Programmteil GOTO
   Case "do"
    ' Hier Programmteil DO
   Case "loop"
    ' Hier Programmteil LOOP
   Case "print"
    ' Hier Programmteil PRINT
   Case Else
    If UBound(Symb) > 0 Then
     If Symb(1) = "=" Then
      ParseTerm strLine
     ElseIf Mid(Symb(0), 1, 1) = "#" Then
      ' Hier Labelinitialisierung
     Else
      MsgBox "Syntaxfehler.", vbCritical, "Fehler"
     End If
    End If
  End Select
 End If

Verfasst: 24.09.2005 09:50
von ts-soft
Das läß sich so kaum übersetzen. Du kannst z.B. LinkListen verwenden für die einzelnen Zeilen.
Das Parsen könnte vereinfacht so aussehen:

Code: Alles auswählen

Select LCase(Trim(StringField(Symb.s, 1, " ")))
  Case "dim"
  Case "if"
  Default
    
EndSelect
wobei hierbei nur eine Zeile berücksichtigt ist

Verfasst: 24.09.2005 10:15
von sen-me
und wie geht das?
If UBound(Symb) > 0 Then

Verfasst: 24.09.2005 10:26
von ts-soft
sen-me hat geschrieben:und wie geht das?
If UBound(Symb) > 0 Then
UBound gibt es in PureBasic nicht, brauchst Du ja auch nicht, wenn Du LinkListen verwendest.
1:1 übersetzen geht nicht, Du mußt schon die Aufgabe des Codes in VB in eine Aufgabe von PB wandeln.

Verfasst: 04.10.2005 17:33
von Falko
Aber nachmachen kann man ihn in PB , wie man an rings Beispielsource sieht. :mrgreen:

http://forums.purebasic.com/english/vie ... 3310#63310

MfG Falko