Doppelpointer (-zeiger)
-
hallo
weiß wer wo ich eine genau definition von Doppelpointer also (**ptr) finde
vielleicht auch mit Speicherauszug usw.
oder kann mir wer schnell eine kurze erläuterung schreiben.mfg
wäre sehr dankbar
thx
-
http://pronix.de/pronix-746.html
(und auch sonst in jedem (gutem) c(++) tutorial zu finden)
-
*pointer
pointer zeigt auf eine speicherstelle**pointer
pointer zeigt auf ein array, welches zeiger auf speicherstellen enthält.***pointer
pointer zeigt auf ein array, dessen inhalt pointer auf arrays sind, deren inhalte pointer sind, die auf speicherstellen zeigen.
-
*********was**********taeten***wir********ohne*************************
pointer*******
-
Ich würde bahaupten man kann einen Doppelpointer zu 95% durch eine bessere Lösung ersetzen. Für was willst du den denn verwenden? Oder gehts dir nur ums Prinzip?
-
wollt nur mal genau wissen was sie wirklich sind
hatte sie bei Baumstrukturen aber noch nicht genau durchblickt wie man den doppelpointer verwendet
-
int main(void) { int wert = 10; /* ptr ist ein Zeiger auf int wert */ int *ptr=&wert; /* ptr_ptr ist ein Zeiger auf den Zeiger int *ptr */ int **ptr_ptr =& ptr; //Frage: Wenn ich jetzt ausgebe *ptr_ptr steht dann der inhalt von ptr drinne n, also die adresse von wert???? printf("*ptr : %d\n",*ptr); printf("**ptr_ptr : %d\n", **ptr_ptr); /* Verändert den Wert, auf den int *ptr zeigt */ **ptr_ptr = 100; printf("*ptr : %d\n",*ptr); printf("**ptr_ptr : %d\n", **ptr_ptr); /* Verändert nochmals den Wert */ *ptr = 200; printf("*ptr : %d\n",*ptr); printf("**ptr_ptr : %d\n", **ptr_ptr); return EXIT_SUCCESS; }
bei diesem Quellcode
kann mir da wer die frage beantworten in zeile 7 im quellcode
-
ja
-
curry-king schrieb:
*pointer
pointer zeigt auf eine speicherstelle**pointer
pointer zeigt auf ein array, welches zeiger auf speicherstellen enthält.***pointer
pointer zeigt auf ein array, dessen inhalt pointer auf arrays sind, deren inhalte pointer sind, die auf speicherstellen zeigen.nix array, du horst!!!
**p -- pointer auf pointer
***p -- pointer auf pointer auf pointer
-
ptr_ptr == adresse von ptr
*ptr_ptr == adresse von wert
**ptr_ptr == 10
-
ups, sorry
, das müssen natürlich nicht zwingend arrays sein!