如何:获取指针变量的值(C# 编程指南) - C# 编程指南

返回介绍

如何:获取指针变量的值(C# 编程指南)

发布于 2019-11-12 字数1566 浏览 866 评论 0

使用指针间接运算符可获取位于指针所指向的位置的变量。表达式采用下面的形式,其中, p 是指针类型:

  复制代码
*p;

不能对除指针类型以外的任何类型的表达式使用一元间接寻址运算符。此外,不能将它应用于 void 指针。

当向 null 指针应用间接寻址运算符时,结果将取决于具体的实现。

示例

下面的示例使用不同类型的指针访问 char 类型的变量。注意,theChar 的地址在不同的运行中是不同的,因为分配给变量的物理地址可能会更改。

C#  复制代码
// compile with: /unsafe

C#  复制代码
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 

请参见

概念

C# 编程指南

参考

指针表达式(C# 编程指南)指针类型(C# 编程指南)unsafe(C# 参考)fixed 语句(C# 参考)stackalloc(C# 参考)

其他资源

类型(C# 参考)

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!