1
2
3
4
5
6
7
8
9
DAVID J. MALAN: Supponiamo ora che vogliamo per stampare tutta la linea di comando argomenti che un utente del tempestiva e non solo la prima di queste parola che lui o lei tipi dopo nome del programma. Bene, per fare questo abbiamo semplicemente bisogno di un costrutto familiare, un ciclo, e A printf familiare. Quindi cerchiamo di combinare i due - per. 

Ed ora voglio iterare su tutti gli argomenti della riga di comando in ARGV. Ora per fortuna, ho accesso al numero totale ARGC. Quindi cominciamo lì. 

int ottengo 0, i è inferiore di argc, i + +. Ora il costrutto iterativo Ho installato qui sta semplicemente andando a integrare da zero fino al numero totale di argomenti nella ARGV. E ora abbiamo bisogno di qualcosa dentro ogni iterazione di questo ciclo. Vediamo, molto semplicemente, stampare la i-esimo tale argomento in ARGV. 

Aprire la staffa vicino staffa printf% s backslash n vicino preventivo virgola. E ora ho bisogno di collegare il valore. Quindi, se voglio l'argomento i-esimo in ARGV, che può essere espresso come ARGV Staffa i, parentesi chiusa, punto e virgola. Salviamo il file, compilare esso, ed eseguirlo. 

Fai ARGV1 dot ridurre drasticamente ARGV1. Ma prima mi ha colpito entrare, dovrei probabilmente fornire alcune ulteriori parole al prompt dei comandi. Quindi ho intenzione di qualcosa come [? foo,?] bar, e baz. E ora ho intenzione di premere Invio. Come previsto, vedo non solo l' nome del programma, che è in argv0. Vedo anche [? foo,?] bar e baz.