Pointer Adresse abfragen
-
Hallo,
ich Programmiere gerade mit Zeigern und würde geren wisse,
wo der Unterschied beim zugreifen auf die Adresse liegt:#include <iostream> using namespace std; int main() { int *zahl = new int(); *zahl = 0xFF; cout << "Wert: " << *zahl << " an Adresse " << zahl << endl; (*zahl)++; cout << "Wert: " << *zahl << " an Adresse " << &zahl << endl; system("PAUSE"); return 0; }Als Ergebnis erhalte ich 2 unterschiedliche Speicheradressen. Wo ist der
genaue Unterschied und welche Methode sollte man zum Abfragen von
Adressen nehmen?0x0ERROR
-
Beim ersten Mal erhältst du die Adresse, an die du 0xFF gespeichert hast. Beim zweiten Mal erhältst du die Adresse des Pointers, der erstere Adresse enthält.
Welche Methode du verwenden solltest, hängt erheblich davon ab, welche dieser beiden Adressen du erhalten willst.
-
mit "zahl" erhälst du den Wert der Variable. mit "&zahl" erhälst du die Addresse.
Nun kann der Wert selbst wieder eine Addresse sein, wie in deinem Beispiel."zahl" enthält die Addresse deines int, "&zahl" ist die Addressse von "zahl".
Und man verwendet natürlich die Methode, die man grade braucht.
-
Kann mal jemand BEispiele posten, wann welcher
Zugriff verwendet wird?0x0ERROR
-
...