Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
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