错误:在'&'标记之前预期';',','或')'

时间:2014-04-09 11:50:17

标签: c compiler-errors

void Partition(int*Data,int low, int high, int& pivotpoint, int& CompareCount)
{
    int i ,j;
    // low is pivot ...

    int pivotitem = Data[low];
    j= low;
    for(i=low+1; i<=high;i++)
    {
        //data<pivot -> to low position
        if(Data[i] <pivotitem)
        {
            j++;
            int k = Data[i];
            Data[i] = Data[j];
            Data[j] = k;
        }
        CompareCount++;
    }
    //move pivot ,pivot position
    pivotpoint = j;
    int k = Data[j];
    Data[j]=Data[low];
    Data[low] = k;
}

这里

我认为使用&#39;&amp;&#39;是对的。

但它没有编译。

这是错误和警告

  

错误:在'&amp;'标记之前预期';',','或')'   警告:文件末尾没有换行符

我不知道为什么会发生这种情况〜

2 个答案:

答案 0 :(得分:1)

在C中,没有通过引用调用,只有按值调用。移除&并放置*

void Partition(int *Data, int low, int high, int *pivotpoint, int *CompareCount){...}

答案 1 :(得分:1)

通过引用传递,int&是纯C ++,在C中不可用。