Variable   C / C++

int x;        // x ist ein Name für eine Speicherzelle

   x          // repräsentiert den Inhalt der Speicherzelle: Der Inhalt von x ist eine ganze Zahl

   &x         // liefert die Adresse der Speicherzelle

   x = ...    // ändert den Inhalt der Speicherzelle

Zeiger (= Pointer)   C / C++

int *px;      // px ist der Name für die Speicherzelle einer Pointer-Variablen

    px        // repräsentiert den Inhalt der Pointer-Variablen:
              // Der Inhalt von px ist die Adresse einer beliebigen Speicherzelle

    *px       // liefert den Inhalt der Speicherzelle deren
              // Adresse in der Pointer-Variablen px gespeichert ist

    &px       // liefert die Adresse der Speicherzelle der Pointer-Variablen
              // (NICHT die in der Speicherzelle gespeicherte Adresse)

    px = ...  // ändert den Inhalt der Pointer-Variablen (die in px gespeicherte Adresse)

    *px = ... // ändert den Inhalt der Speicherzelle deren Adresse in der Pointer-Variablen px gespeichert ist

Referenz   C++

    fkt( y );  // Funktionaufruf mit y als Parameter


    void fkt( int &rx )  // Referenz-Parameter rx (call by reference)
    {
       // => rx wird in fkt als Alias-Name für die Variable y des aufrufenden Programmes verwendet

       rx        // repräsentiert den Inhalt derselben Speicherzelle wie y

       &rx       // liefert die Adresse der Speicherzelle y

       rx = ...  // ändert den Inhalt der Speicherzelle y
    }