18.08.2013 Views

Dalla A alla Z passando per C - Robotica

Dalla A alla Z passando per C - Robotica

Dalla A alla Z passando per C - Robotica

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

}<br />

printf("Salve, Mondo!\n");<br />

return 0;<br />

Il programma di esempio presenta un insieme di caratteristiche del linguaggio che ora verranno<br />

soltanto elencate, ma che verranno successivamente analizzate in dettaglio nelle sezioni di<br />

competenza. Tali caratteristiche si annoverano:<br />

• la presenza di un commento, che in questo caso illustra l’obiettivo del programma<br />

• l’istruzione <strong>per</strong> includere un file di intestazione (include)<br />

• la definizione della funzione main<br />

• un’istruzione di stampa a video (printf)<br />

• l’utilizzo di una stringa di testo 2 nella funzione printf delimitata dai doppi apici<br />

• l’istruzione <strong>per</strong> ritornare il valore di uscita di una funzione (return)<br />

L’esecuzione inizia d<strong>alla</strong> funzione main, che deve essere sempre presente in un programma C.<br />

La funzione main potrebbe ricevere alcuni argomenti, che <strong>per</strong> ora ignoriamo, e ritorna un numero<br />

intero. Quando main termina, ovvero viene incontrata una istruzione return oppure si<br />

raggiunge l’ultima istruzione della funzione, il programma termina. Se ritorna zero vuol dire che<br />

il programma ha avuto successo, se ritorna non-zero vuol dire che c’è stato un errore; il numero<br />

specifico può indicare il tipo di errore riscontrato, se chi ha eseguito questo programma sa come<br />

differenziarli.<br />

4.2 Compilazione del programma<br />

Supponiamo di memorizzare il primo programma in un file chiamato hello.c. E’ sempre bene<br />

denominare un file sorgente C dandogli un nome significativo, che rispecchi il contenuto del<br />

programma che vi e’ implementato (ma questo e’ una prassi generale da utilizzare <strong>per</strong> la denominazione<br />

di qualsiasi file!). In particolare, <strong>per</strong> chiarire che si tratta di un file sorgente in C,<br />

l’estensione del file sara’ bene che sia .c.<br />

Detto cio’, il comando <strong>per</strong> la compilazione del programma e’ il seguente:<br />

$ gcc -Wall -o hello hello.c<br />

Nell’istruzione precedente si possono distinguere le seguenti parti (in ordine logico diverso dal<br />

quale appaiono nel comando):<br />

• l’invocazione del compilatore gcc (potrebbe anche essere cc, che in molte macchine non e’<br />

altro che una chiamata a gcc)<br />

• l’indicazione del file sorgente da compilare hello.c<br />

• l’opzione -o hello, che istruisce il compilatore a generare un file eseguibile denominato<br />

hello<br />

• l’opzione -Wall che indica al compilatore di produrre tutti i messaggi di avvertimento<br />

possibili, i cosiddetti (W)arnings<br />

2 Una stringa di testo e’ sequenza di caratteri.<br />

35

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!