PDA

View Full Version : [C] Spezzare una stringa


Spike79
26-04-2007, 09:06
Ciao, ho un problema con il C, di cui purtroppo non sono esperto....allora, ho un programma che deve ricevere via command dei parametri, e fin qua ok...ho il mainproc e la variabile cmd (che è char *)
Come faccio a 'spezzare' questa variabile in pezzi per valorizzare altrettante variabili ?

Es. Prog.exe UTENTE PROFILO CODICE

Come faccio ad avere tre variabili coi tre parametri passati all'exe ?
E ai tre, potrebbe aggiungersi un quarto parametro, ossia "DEBUG", che attiva la modalità debug del programma.

Grazie

andbin
26-04-2007, 09:42
Es. Prog.exe UTENTE PROFILO CODICE

Come faccio ad avere tre variabili coi tre parametri passati all'exe ?
E ai tre, potrebbe aggiungersi un quarto parametro, ossia "DEBUG", che attiva la modalità debug del programma.Se gli unici delimitatori possono essere spazi e/o tab, il modo più semplice sarebbe quello di usare la funzione strtok().
Se invece dovessi interpretare anche dei parametri "quoted", come ad esempio:

Prog.exe "tizio caio" xyz abc

Allora dovresti fare un piccolo parser ... nulla di trascendentale, comunque.

Spike79
26-04-2007, 10:37
Grazie!
Strtok fa proprio al caso mio!
Grazie mille x la dritta.