Hi Leute,
mit c++ kenne ich mich noch nicht so gut aus. Da ich es aber für einen Server praktischer finde, will ich so einen auch in C++ schreiben. Das Grundprinzip funkioniert schon, jetzt will ich noch einen Parser schreiben, dass der Server die Befehle auch benutzen kann. Dazu sollen die gesendeten Zeichenketten in 3 Bestandteile zerlegt werden:
- Absender
- Befehl
- Parameter des Befehls
Das habe cih auch gemacht, aber mich würde interessieren, wie ich meinen bisherigen parser code verbessern kann, bzw welche Programmierwerkzeuge/Techniken dafür besser geeignet wären.
Hier mein Code
Vielen Dank schonmal für die Hilfe
mit c++ kenne ich mich noch nicht so gut aus. Da ich es aber für einen Server praktischer finde, will ich so einen auch in C++ schreiben. Das Grundprinzip funkioniert schon, jetzt will ich noch einen Parser schreiben, dass der Server die Befehle auch benutzen kann. Dazu sollen die gesendeten Zeichenketten in 3 Bestandteile zerlegt werden:
- Absender
- Befehl
- Parameter des Befehls
Das habe cih auch gemacht, aber mich würde interessieren, wie ich meinen bisherigen parser code verbessern kann, bzw welche Programmierwerkzeuge/Techniken dafür besser geeignet wären.
Hier mein Code
Code:
//Den Befehl parsen und Serverrelevante Befehle erfassen
int msgPos=1;
//Absender ermitteln
while(1)
{
if (msgPos>(int)strlen(buf2)) break;
if (buf2[msgPos] == ':')
{
msgPos++;
break;
}
else
{
sprintf(buf_name,"%s%c ",buf_name,buf2[msgPos]);
}
msgPos++;
}
//Befehl erfassen
while(1)
{
if (msgPos>(int)strlen(buf2)) break;
if (buf2[msgPos] == ':')
{
msgPos++;
break;
}
else
{
sprintf(buf_command,"%s%c ",buf_name,buf2[msgPos]);
}
msgPos++;
}
//Übergabewerte erfassen
while(1)
{
if (msgPos>(int)strlen(buf2)) break;
if (buf2[msgPos] == ':')
{
msgPos++;
break;
}
else
{
sprintf(buf_expression,"%s%c ",buf_name,buf2[msgPos]);
}
msgPos++;
}
Vielen Dank schonmal für die Hilfe