INTRODUZIONE ALLA PROGRAMMAZIONE IN C
Input dalla linea di comando
Il C permette di leggere argomenti dalla linea di comando, e questi possono
poi essere utilizzati all'interno dei programmi.
In fase di lancio del programma, possiamo scrivere gli argomenti dopo il
nome del programma da eseguire. Abbiamo visto un esempio di questa
possibilita' in relazione all'utilizzo dei compilatori:
c89 -o prog prog.c
dove "c89" e' il programma, mentre "-o prog prog.c" sono gli argomenti.
Al fine di essere in grado di utilizzare tali argomenti, e' necessario
definirli nel seguente modo:
main(int argc, char **argv)
cosi' la funzione main ha ora i propri argomenti; questi sono gli unici
argomenti main accettati.
In questa definizione:
- argc e' il numero degli argomenti digitati, incluso il nome del programma;
- argv e' un array di stringhe contenente ciascon argomento, compreso il
nome del programma come primo elemento.
Ad esempio:
#include <stdio.h>
main(int argc, char **argv)
{ /* programma per stampare gli argomenti dalla linea di comando */
int i;
printf("argc=%d\n",argc);
for(i=0;i < argc;++i)
printf("argv[%d]:=%s\n",i,argv[i]);
}
Se si e' compilato,chiamandolo args e fatto eseguire scrivendo:
args f1 "f2" f3 4 stop!
l'output sara':
argc=6
argv[0]=args
argv[1]=f1
argv[2]=f2
argv[3]=f3
argv[4]=4
argv[5]=stop!
Va notato che:
- argv[0] e' il nome del programma;
- argc totalizza anche il nome del programma;
- tra gli argomenti, i caratteri "" vengono ignorati (sono considerati
solamente delimitatori di argomenti);
- gli spazi bianchi delimitano gli argomenti;
- nel caso in cui sia necessario mantenere spazi bianchi, occorre metterli
tra "".