cpp / beginner
Snippet
Zeiger und Speicheradressen
Zeiger sind Variablen, die Speicheradressen statt tatsächlicher Werte speichern. Der Asterisk (*) deklariert einen Zeigertyp, das Und-Zeichen (&) erhält die Adresse einer Variable, und die Dereferenzierung mit * greift auf den Wert an dieser Adresse zu. Dies gibt dir direkte Kontrolle über die Speichermanipulation.
snippet.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>int main() {int number = 42;int* ptr = &number;std::cout << "Value: " << number << std::endl;std::cout << "Address: " << ptr << std::endl;std::cout << "Dereferenced: " << *ptr << std::endl;*ptr = 100;std::cout << "New value: " << number << std::endl;return 0;}
Erklärung
1
int* ptr = &number;
Deklariert einen Zeiger auf int und initialisiert ihn mit der Adresse von number
2
std::cout << "Address: " << ptr << std::endl;
Gibt die Speicheradresse aus, die im Zeiger gespeichert ist
3
std::cout << "Dereferenced: " << *ptr << std::endl;
Verwendet *, um auf den Wert an der Adresse zuzugreifen, auf die ptr zeigt
4
*ptr = 100;
Ändert die ursprüngliche Variable durch den Zeiger