如何将指针作为参数传递给C#中的方法?

要将指针作为参数传递给方法,请参考以下步骤:

首先,创建带有不安全修饰符的函数交换。

public unsafe void swap(int* p, int *q) {
   int temp = *p;
   *p = *q;
   *q = temp;
}

现在,在static void main下,为第一个和第二个变量添加值,为它们两个都设置指针。

显示变量的值,然后调用swap()上面显示的方法。该方法交换值并显示结果-

public unsafe static void Main() {
   Program p = new Program();
   int var1 = 10;
   int var2 = 20;
   int* x = &var1;
   int* y = &var2;

   Console.WriteLine("Before Swap: var1:{0}, var2: {1}", var1, var2);
   p.swap(x, y);

   Console.WriteLine("After Swap: var1:{0}, var2: {1}", var1, var2);
   Console.ReadKey();
}