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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

7.3 I puntatori<br />

Un puntatore memorizza l’indirizzo in memoria di una variabile.<br />

Un puntatore si definisce scrivendo il tipo cui si punta, l’asterisco e il nome della variabile.<br />

Per esempio<br />

int *p;<br />

Conviene leggere il carattere asterisco come il puntato da. Nel caso precedente quindi si legge è<br />

intero il [valore] puntato da p.<br />

I puntatori sono tutti della stessa dimensione, e sono a 32 o 64 bit a seconda del processore<br />

su cui si lavora. Su tutte le piattaforme un unsigned long e un puntatore hanno la stessa<br />

dimensione.<br />

Dal momento che i puntatori costituiscono un aspetto chiave e talvolta un pò ostico del<br />

linguaggio C, verranno ripresi in modo più dettagliato al Capitolo 8.<br />

7.4 I vettori<br />

I vettori, o array, <strong>per</strong>mettono di allocare un insieme di elementi dello stesso tipo in zone contigue<br />

della memoria. La sintassi <strong>per</strong> la dichiarazione di un vettore è la seguente:<br />

nome-tipo identificatore [ cardinalità ] ;<br />

dove<br />

• nome-tipo è un qualsiasi tipo di dato, sia semplice che composto<br />

• identificatore è il nome che identifica il vettore<br />

• cardinalità è un numero intero che indica di quanti elementi è costituito il vettore<br />

Per esempio<br />

int num[10];<br />

definisce il vettore num di 10 interi. Il vettore è indicizzato da 0 a 9, ovvero il primo elemento è<br />

num[0] mentre l’ultimo è num[9].<br />

Utilizzare le parentesi tonde <strong>per</strong> indicizzare gli elementi di un vettore invece delle<br />

parentesi quadre costituisce un errore di sintassi.<br />

Il programma seguente effettua la somma di due numeri che, invece di essere memorizzati in<br />

variabili singole, vengono memorizzati come elementi di un vettore opportunamente dimensionati.<br />

/*<br />

* programma <strong>per</strong> il calcolo di una somma<br />

* utilizzando dati memorizzati in un vettore<br />

*/<br />

#include <br />

81

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

Saved successfully!

Ooh no, something went wrong!