Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
struct obj item;<br />
int id, errcode;<br />
id = findid(&item, &errcode);<br />
if (errcode == ERR_INVALID) {<br />
/* gestisce l’errore, <strong>per</strong> esempio: */<br />
printf("Struttura non valida. Code di errore: \n", errcode);<br />
exit(1);<br />
}<br />
/* utilizza il valore restituito */<br />
9.5 La funzione main<br />
Un programma C deve sempre includere una funzione chiamata main. La funzione main, o “il<br />
main”, è il punto dal quale il programma inizia la sua esecuzione. La funzione main può essere<br />
definita in due modi. Il primo prevede di specificare il tipo restituito, che deve essere sempre<br />
intero, e nessun parametro. L’esempio è il seguente:<br />
int main(void)<br />
Si noti che in taluni contesti è possibile trovare definizioni del tipo<br />
void main(void)<br />
Tale definizione viene accettata dal compilatore, con la generazione di un warning, ma dovrebbe<br />
essere evitata e in queste dispense sarà considerata una definizione errata.<br />
L’altra possibilità è quella di dotare il main di due parametri, come nell’esempio seguente<br />
int main(int argc, char **argv)<br />
I parametri verranno inizializzati all’atto della chiamata della funzione main, ovvero dell’avvio del<br />
programma, con i valori recu<strong>per</strong>ati d<strong>alla</strong> linea di comando utilizzata <strong>per</strong> invocare il programma<br />
stesso.<br />
Il semplice programma seguente stampa a video alcune informazioni relative <strong>alla</strong> linea di<br />
comando.<br />
#include <br />
int main(int argc, char ** argv)<br />
{<br />
int i;<br />
}<br />
for (i = 0; i < argc; i++) {<br />
printf("Argomento %d (%d): %s\n", i, argc, argv[i]);<br />
}<br />
return 0;<br />
Dopo aver compilato il programma con il comando<br />
99