qualcuno sa dirmi come mai implementando queste funzioni:

void scambio_valarray(int array[],int a,int b)
{
int appo;
appo=array[a];
array[a]=array[b];
array[b]=appo;
}


void inserisci (int array[],int riempimento,int &posizione, int valore)
{
riempimento++;
for (int i=riempimento-1;i>posizione;i--)
{
scambio_valarray(array[],i,i-1);
array[posizione]=valore;

}
}

mi da questo errore?

funzioni.cpp: In function 'void inserisci(int*, int, int, int)':
funzioni.cpp:151:32: error: expected primary-expression before ']' token
scambio_valarray(array[],i,i-1);