Hallo Leute, ich habe jetzt einige Selbstversuche gemacht zu Pointern, aber bin am Ende nur durcheinander gekommen. Um sicher zu gehen wollte ich euch fragen, ob ich es soweit richtig verstanden habe und wo meine Probleme sind.
Bei dem ersten Link: 1.printf gibt die Adresse von b aus. 2.printf gibt den Wert von b als Hexadezimalzahl, aber wieso !? %p steht doch eigentlich für eine Adresse. 3. printf gibt den Wert von b aus. 4.printf gibt die Adresse des Pointers. 5. printf gibt die Adresse worauf der Pointer hinzeigt, also auf die Adresse von b 6. printf wieder die Hexidezimalzahl von b, wieso aber?! 7.printf der Wert worauf der Pointer gerade in der Adresse von b zeigt.
Bei dem zweiten Link habe ich oben den pointer nicht auf die Adresse von b gesetzt sondern auf b. Ich dachte somit zeigt der Pointer immer auf die Variable b egal wo er sich im Speicher befindet, sprich wenn sich der Speicher für b ändert, ändert das auch die Adresse worauf der Pointer zeigt.
Ich verstehe jetzt ehrlich gesagt nicht warum einige Sachen nicht angezeigt werden bzw warum sich zB bei der Ausgabe von a Adresse nicht mehr die Adresse von b ausgezeigt wird, sondern wieder eine Hexadezimalzahl.
Ich weiß, dass ich 100% irgendwo Denkfehler habe bzw falsche Ansätze, aber ich verstehe nicht wieso und was genau falsch sein soll.
Über eine Erklärung würde ich mich sehr freuen.