Per quanto riguarda le opzioni dei comandi, ti consiglio di usare uno stack di stringhe.
Ogni volta che leggi una porzione di stringa racchiusa tra parentesi pushi nello stack quella stringa.
Ad esempio se hai il comando:
codice:
do [opzione1] [opzione2]
Leggi tutta la stringa, innanzitutto controlli che ogni simbolo '[' sia seguito da un simbolo ']', ma quello lo fai a parte.Dopo il controllo dividi la stringa in 3 parti:
codice:
"do"
"[opzione1]"
"[opzione2]"
L' hai divisa in token.
Una volta divisa hai le varie parti inserite nello stack, ti basterà leggerlo.
Stai scrivendo il programma di un interprete comandi, in particolare la parte che divide la stringa in token è l' analizzatore lessicale.