waarom heb je ze nou precies nodig ?
waneer ?
Het nuttige van pointers is als je gaat gebruik maken van
dynamisch geheugen.
Verder heb ik aantal dingen te melden over je programma:
1) Je voegt de header
stdlib.h toe aan je programma, maar je gebruikt geen enkele functie die in deze header zit.
2) Kijk naar de volgende regel:
printf("And the memory location of the place where the number is stored is: %*", *anum);
Ten eerste, het gaat hier om een
integer variabel, niet om een
pointer naar integer variabel. Sterker nog: in heel je programma maak je nog niet eens gebruik van een pointer variabel. Want als anum een pointer zou zijn, zou de declaratie
int * anum geweest zijn.
int * betekent een
pointer naar een integer, je kunt int ook veranderen door bijvoorbeeld float, dan wordt het een pointer naar een float. Om aan te geven dat het een variabel is van type integer aan scanf() of printf() gebruiken we het
%d symbool.
Ten tweede, met de operator '
*' zeggen we letterlijk : "de waarde die op het geheugenadres van anum is opgeslagen", en niet "het geheugenadres van anum". Voor het tweede gebruik je de '
&' operator.
Dus, deze lijn verander je naar:
printf ( " And the memory location of the place where the number is stored is: %d", &anum );
Dan zou het moeten werken. Ik hoop dat ik het duidelijk uitgelegd heb