puntatori

è possibile omettere l'operatore di deferenzizione?


il 18 Dicembre 2015, da matteo musazzi

Giorgio Audino il 21 Dicembre 2015 ha risposto:

Ciao Matteo, l'operatore di dereferenziazione serve per accedere al valore puntato da un certo puntatore. Senza l'operatore vai invece ad operare sul puntatore stesso, cioè sull'indirizzo di memoria salvato in quella variabile. Ad esempio: int main(){ int * p; int * q; *p = 3; // la locazione di memoria puntata da p contiene il valore intero 3 p = 3; // questo non ha senso: sto cambiando l'indirizzo puntato da p. p = q; // p ora punta alla stessa porzione di memoria a cui punta q p = &q; // p ora punta a q: cambiare il valore puntato da p cambia anche quello puntato da q (essendo lo stesso valore). }