Eigene Scriptsprache(Befehle und Werte mit Leehrzeichen getrennt)

FBIagent

Erfahrenes Mitglied
Moin,

ich habe ein Problem beim schreiben einer kleinen eigenen Scriptsprache.
Man schreibt zum Beispiel:
Code:
var_deklarieren zahl_des_grauens int
var_setzen zahl_des_grauens 3
schreiben_mit_umbruch "<<zahl_des_grauens<<\"
var_setzen zahl_des_grauens 4
schreiben_mit_umbruch "<<zahl_des_grauens<<\"
var_setzen zahl_des_grauens 5
schreiben "<<zahl_des_grauens<<\"
warten_auf_enter

Nun habe ich dort Befehle mit einem folgenden Wert und welche mit 2 folgenden
Werten. An dem Punkt wo ich die Werte die nach den Befehlen kommen herrausfilten
muss hapert es jedoch, damit komme ich nicht so richtig klar.

Hier der code der Werte nach Befehlen zurückgibt:
Code:
std::string getValue(std::string rowCode,int paramsNum = 1,int valNum = 1)
{
  int num = 0,empties[2];
  std::string::size_type rowCodeLength;
  rowCodeLength = rowCode.length();
 
  for(int i=0;i<rowCodeLength;i++)
  {
    if(rowCode.substr(i,1) == " ")
    {
      empties[num] = i;
      num++;
      if(num==paramsNum)
        break;
    }
  }
 
  if(paramsNum==1)
  {
    return rowCode.substr(empties[0]+1,rowCodeLength);
  }
  else
  {
    if(valNum==1)
      return rowCode.substr(empties[0]+1,empties[1]-empties[0]);
    else
      return rowCode.substr(empties[1]+1,rowCodeLength);
  }
}

Wäre nett wenn mir jemand von euch helfen könnte.

THX im Vorraus
MFG FBIagent
 
Zurück