Stefans Wiki



Pointer

main.cpp

 1: /**
 2:  * Projekt: Pointer
 3:  *
 4:  * @author Stefan Jahn
 5:  * @version 20070318
 6:  * @date 16.03.2007
 7:  *
 8:  * @file main.cpp
 9:  */
10:
11: #include <iostream>
12: using namespace std;
13:
14: /**
15:  * main-Funktion
16:  */
17: int main (int argc, char const *argv[]) {
18:     cout << "Pointer:" << endl;
19:     cout << "========" << endl;
20:
21:     // Variabel erstellen
22:     int a = 10;
23:
24:     // Pointer erstellen
25:     // Pointer muß mit dem Datentyp erstellt werden auf dem der Pointer
26:     // später zeigt. Unbedingt mit NULL initialisieren damit der Pointer
27:     // keine ungültige Speicheradresse enthält.
28:     int *p1 = NULL;
29:
30:     // Pointer eine Adresse zuweisen
31:     // & = Adressoperator
32:     p1 = &a; // Pointer zeigt nun auf die Variabel a, Pointer enthält die Adresse von a
33:
34:     // Oder alles in einem Schritt
35:     int *p2 = &a;
36:
37:     cout << "cout a   = " << a << " (Variabel a)" << endl;
38:     cout << "cout *p1 = " << *p1 << " (Pointer p1)" << endl;
39:     cout << "cout &a  = " << &a << " (Adresse von a)" << endl;
40:     cout << "cout p1  = " << p1 << " (Adresse p1)" << endl;
41:     cout << endl;
42:
43:     // Wert des Pointers ändern
44:     // Durch ändern des Wertes des Pointers wird auch die Variabel geändert
45:     // und umgekehrt.
46:     cout << "Setze *p1 = 20" << endl;
47:     *p1 = 20; // Achtung: *, den Dereferenzierungsoperator, nicht vergessen
48:     cout << "cout a   = " << a << " (Variabel a)" << endl;
49:     cout << "cout *p1 = " << *p1 << " (Pointer p1)" << endl;
50:
51:     return 0;
52: }
cpp/kurzerklaerungen_und_grundlagen/pointer.txt · Zuletzt geändert: 12.07.2011 12:13 (Externe Bearbeitung)
Quelle: http://stefanjahn.de/cpp:kurzerklaerungen_und_grundlagen:pointer?s%5B%5D=using
Webseite: http://stefanjahn.de