Hola. Comentarte un par de cosas antes de ir al tema si me permites:
1) No sirve de nada amontonar el código tal y como lo haces. ¿Qué sales ganando con ello? Nada salvo poca legibilidad. Deja que pase el aire
2) Tu pregunta no tiene mucho sentido porque un array en C no es más que un puntero con la memoria ya reservada. En C array = puntero, es decir, int[] = int*.
3) Incluye siempre las cabeceras de las librerías que uses. Aquí te falta stdlib (para usar rand).
4) Nombra las funciones acorde con lo hacen.
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void rellenar_matriz(int *m)
{
int i;
for(i = 0; i < 9; i++)
{
}
}
int main()
{
int m[3][3] = {{-1,-1,-1},{-1,-1,-1},{-1,-1,-1}};
rellenar_matriz((int*)m);
int i, j;
for(i = 0; i < 3; i++)
{
for(j = 0; j < 3; j++)
{
}
}
return 0;
}