就像下面这段C代码,遍历一个数组里的内容:
void func(double *head, int count)
{
    int i = 0;
    for(i = 0; i < count; ++i, ++head)
    {
        *head += 2.0;
    }
}C#里能否也这样:
method(ref double head, int count)
{
    //遍历以head为起始地址的大小为count的数组
}

解决方案 »

  1.   

    ref double[] head可以尝试下
    fixed()
    {
    }
      

  2.   

    在C#里可以直接以数组类型做为参数的类型,而不是传数组的地址.比如:method(int[] array)
    {
        for(int i=0;i<array.Length;i++)
        {
            Console.WriteLine(array[i]);
        }
    }
      

  3.   

    为何要这样做?提供好的Length属性为啥不用 非要往复杂里走
      

  4.   

    是可以的呀,你要把你要用指针操作的哪一段代码放到
    unsafe
    {
    }
    之中呀,因为,c#这可以真接使用指针呀。