Pointer in C?

2 Antworten

int * pX=&x; /* Definition von pX mit Initialisierung entspricht: */
int * pX; /* deklariere pX als Pointer auf Interger */
pX=&a; /* Lege Adresse von X in Pointer / lass Pointer pX auf x zeigen */
int y=*pX; /**-Operator dereferenziert Pointer, nimmt also das, worauf der Pointer zeigt */

Im Endeffekt wird also der Wert von x an y zugewiesen.

soweit ich weiß wird bei int *px nur festgelget das der pointer ein integer ist. das brauchst du dann im weiteren verlauf nicht mehr, weil es ja bereits festgelegt wurde. du kannst es auch so schreiben:

int *px;

*px = &x;

int y = *px;

kann aber auch sein, dass ich falsch liege