Compartir a través de


Cómo: Obtener el valor de una variable de puntero (Guía de programación de C#)

Utilice el operador de direccionamiento indirecto del puntero para obtener la variable en la ubicación indicada por un puntero. La expresión tiene el formato siguiente, donde p es un tipo de puntero:

*p;

No se puede utilizar el operador de direccionamiento indirecto unario en una expresión de cualquier tipo distinta de la del tipo de puntero. Tampoco se puede aplicar a un puntero void.

Cuando se aplica el operador de direccionamiento indirecto a un puntero null, el resultado depende de la implementación.

Ejemplo

En el ejemplo siguiente, se tiene acceso a una variable del tipo char mediante punteros de tipos diferentes. Hay que tener en cuenta que la dirección de theChar variará de una ejecución a otra porque la dirección física asignada a una variable puede cambiar.

// 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);
    }
}
  

Vea también

Referencia

Expresiones de puntero (Guía de programación de C#)

Tipos de puntero (Guía de programación de C#)

unsafe (Referencia de C#)

fixed (Instrucción, Referencia de C#)

stackalloc (Referencia de C#)

Conceptos

Guía de programación de C#

Otros recursos

Tipos (Referencia de C#)