Cuando pasas un arreglo bidimensional a una función no necesita pasar el numero de filas, sólo el de columnas.
La forma en que te mueves dentro del arreglo se llama aritmética de puntero.
Tu ejemplo se puede hacer más interesante si tu función recibiera un puntero a entero y no toda la matriz. Ve eso y sino aquí estamos para ayudarte.
Bueno para que no me puntúes negativo aquí esta el código, basado en lo que hiciste.
Código C:
Ver original#include <stdio.h>
#include <conio.h>
void apuntarre(int *arre);
void main() {
int arre[3][3];
apuntarre((int*) arre);
for (int x = 0; x < 3; x++) {
for (int y = 0; y < 3; y++) {
}
}
}//fin del main
void apuntarre(int *arre) {
int *ptr, a = 0;
ptr = arre;
for (int x = 0; x < 9; x++) {
ptr[x] = a;
a++;
}
}