la funzione main é la funzione principale del programma e viene eseguita all'inizio:
- essa può avere degli argomenti e deve restituire un valore
- nessun'altra funzione nel programma deve avere il nome main
restituzione di un valore
main é di tipo int in quanto restituisce il valore 0 se eseguita senza errori o 1 se con errore.
esempio: programma restituirà 1 se il numero casuale a é maggiore di 10, 0 se é minore o uguale a 10
#include <stdio.h>
#include <stdlib.h>
int main(void)
{int a=rand();
if (a>10)
return 1; errore!
return 0;}
passaggio di parametri
i parametri passati alla funzione main possono essere:
- nessun parametro: int main (void)
- alcuni parametri: int main (int argc, char *argv[])
- int argc numero di argomenti passati al programma (incluso il nome del programma)
- char *argv[] array che contiene tutti gli argomenti sotto forma di stringhe (il nome del programma corrisponde ad argv[0])
il passaggio di parametri ad un programma avviene tramite la sua invocazione da linea di comando
é sufficiente far seguire al nome del programma i valori da passare, separati da uno spazio
gli argomenti vengono trattati come stringhe, in particolare, alla prima posizione del vettore argv sarà presente una stringa che contiene il nome del programma eseguito
nel caso in cui sia necessario passare al programma parametri di altri tipi base sarà necessario effettuare una conversione
esempio:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{int i;
printf("A questo programma sono stati passati %d argomenti.\n", argc-1);
for (i=1; i<argc; i++)
printf("Il %dé parametro é %s.\n", i, argv[i]);
system("pause");
return 0;}
se dalla riga di comando eseguo: pippo buogniorno ciao
il programma restituisce:
A questo programma sono stati passati 2 argomenti.
Il 1 parametro é buogniorno.
Il 2 parametro é ciao.