alura:
creazione di una variabile e di un puntatore
codice:
// creazione varabile e puntatore 
int pippo, *punta_pippo; 
//puntamento alla varaibile 
punta_pippo = &pippo; /* i puntatori contengono un indirizzo di memoria: l'operatore & indica L'INDIRIZZO DI variabile_che_lo_segue*/ 
/* 
nota il puntatore deve sempre essere dello stesso tipo della variabile a cui punta. 
Questo perchè: quando creo una variaible in memoria
il compilatore sa quanti byte occupa ( int 2 o 4, char 1 ect) il puntatore, se accede ad una cella di memoria che contiene parte del dato (ad esempio
se cè un int di 2 byte occuperà 2 byte,
quindi 2 celle di memoria)
il puntatore deve sapere quanti bit leggere x interpretare correttamente il dato. 
Se tu dichiari un punatore char e una variabile int, 
e fai puntare il puntaotre alla vriabile potrei leggere ed accedere solo al byte più significativo del dato intro 
sepro di essere stao chiaro( al massimo scrivimi x maggiori dettagli)*/ 
// accesso alla variabile 
printf ("pippo %d\n", *punta_pippo);
I puntatori vengono usati spessissimo x accedere ad un array. L'uso di puntatori è molto + veloche che il metodo x indicizzazione:
codice:
int array[100], *punta_array; 
punta_array = array; /*il nome dell'array è identico 
a &nome_array[0] quindi basta il nome 
x fare puntare il puntatore alla prima cella di memoria*/ 
// sommare alla cella corrente quella successiva 
punta_array += punta_array++; /* l'indirizzo dell'array viene incrementato, 
passando alla cella successiva. 
Questa istruzione equivale a 
array[corrente] = array[corrente] + array[corrente+1]*/ 
// passare dalla cella 2 alla 5 
punta_array += 3
penso che x ora possa bastare così
ti dico anche che
nel passaggio x riferimento vengono usati i puntatori
nella strutturazione dinamica vengono usati i puntatori
e molto altro ancora
SPERO DI ESSERE STATO ESAURIENTE
ciauz