在c#中将double []转换为double *

时间:2014-03-03 06:16:36

标签: c# pointers

如何在c#

中将double[]转换为double*

我在尝试

unsafe {
 System.Double[] a = { 1.0, 2.0, 3.0, 4.0, 5.0 };
 fixed(double *aP = a)
   for (int i = 0; i < a.Length ; i++)
   {
    //need to copy?
   }
}

1 个答案:

答案 0 :(得分:2)

这在我的(非常有限的,运行一次)测试中表现得很好。

  unsafe { 
    Double[] a = { 1.0, 2.0, 3.0, 4.0, 5.0 };
    fixed (double* aP = a) {
      for (int i = 0; i < a.Length; i++) {
        System.Console.WriteLine(*aP + i);
      }
    }
  }