7°Lezione esempi di programmazione: i puntatori

7°Lezione esempi di programmazione: i puntatori

In questa settimana puntata, si parlerà dei puntatori, uno dei principali strumenti nella programmazione in C. Un puntatore, per definizione, contiene un generico indirizzo in memoria. Vediamo alcuni esempi in cui si utilizzano i puntatori.

/*Programma che illustra i puntatori, attraverso la printf del suo valore*/

 

#include <stdio.h>

 

int main(void)

{

//Dichiaro una varabiale associata al numero 5 e un puntatore

int numero=5;

int *p;

 

//Attraverso la printf, vengono spiegati i vari valori delle variabili

printf(“La variabile vale %d, e si trova all’indirizzo di memoria %pn”,numero,&numero);

//p assume l’indirizzo della variabile numero

p=&numero;

printf(“Il valore del puntatore è %pn”,p);

//Il puntatore accede all’indirizzo di memoria della variabile numero

*p=numero;

printf(“Il valore del puntato da p è %dn”,*p);

 

return0;

}

 

Da notare, che per accedere ad un variabile attraverso un puntatore, bisogna utilizzare il simbolo *, che si significa il “puntata da … è….”, mentre per fare una printf di un puntatore, bisogna utilizzare %p.

 

Nel prossima programma viene illustrato come è possibile utilizzare i puntatori, per scrivere all’interno di un vettore di numeri.

//Programma che illustra il funzionamento dei puntatori, per inserire dei numeri all’interno di un vettore di tipo intero

 

#include <stdio.h>

 

int main()

{

//Dichiaro un vettore di tipo int e un puntatore

int vett[10];

int *p;

int i;

 

p = vett; /* equivalente a p = &vet[0] */

//Attraverso un puntatore vengono inseriti i numeri all’interno del vettore

for (i = 0; i < 10; i++)

*(p + i) = 100 + i;

 

for (i = 0; i < 10; i++)

printf(“%d “, vett[i]);

printf(“n”);

 

return0; }

Da questi esempi, si può notare come vettori e puntatori siano molto simili; infatti è vero.  Il modo corretto di accostare i concetti di puntatori e vettori è di considerare che l’aritmetica dei puntatori è equivalente al metodo di indicizzazione dei vettori .

punt_base

puntatori

Blogger

Un pensiero su “7°Lezione esempi di programmazione: i puntatori

I commenti sono chiusi.