Ciao . . . Devi prima allocare un numero di puntatori a int pari al numero delle righe della matrice, poi, per ogni riga, devi allocare un numero di interi pari al numero delle colonne della matrice:
codice:
#define N_ROW 2

#define N_COL 2
. . . 
int** matrix = (int**)malloc( sizeof(int*) * N_ROW );
for( int i=0; i < N_ROW; ++i )
{
matrix[ i ] = (int*)malloc( sizeof(int) * N_COL );
}