Gewusst wie: Abrufen des Werts einer Zeigervariablen (C#-Programmierhandbuch)

Verwenden Sie den Zeigerdereferenzierungsoperator, um die Variable an dem Speicherort abzurufen, auf den der Zeiger verweist. Der Ausdruck hat das folgende Format, wobei p ein Zeigertyp ist:

*p;  

Der unäre Dereferenzierungsoperator kann nur auf Ausdrücke angewendet werden, die vom Zeigertyp sind. Außerdem kann er nicht auf einen void-Zeiger angewendet werden.

Das Ergebnis einer Anwendung des Dereferenzierungsoperators auf einen NULL-Zeiger hängt von der Implementierung ab.

Beispiel

Im folgenden Beispiel wird mit Zeigern verschiedener Typen auf eine Variable vom Typ char zugegriffen. Beachten Sie, dass die Adresse von theChar von Ausführung zu Ausführung variiert, da die für eine Variable reservierte physikalische Speicheradresse nicht immer dieselbe ist.

// compile with: /unsafe
unsafe class TestClass
{
    static void Main()
    {
        char theChar = 'Z';
        char* pChar = &theChar;
        void* pVoid = pChar;
        int* pInt = (int*)pVoid;

        System.Console.WriteLine("Value of theChar = {0}", theChar);
        System.Console.WriteLine("Address of theChar = {0:X2}",(int)pChar);
        System.Console.WriteLine("Value of pChar = {0}", *pChar);
        System.Console.WriteLine("Value of pInt = {0}", *pInt);
    }
}

Value of theChar = Z
Address of theChar = 12F718
Value of pChar = Z
Value of pInt = 90

Siehe auch

C#-Programmierhandbuch
Zeigerausdrücke
Zeigertypen
Typen
Unsicher
fixed-Anweisung
stackalloc