non è possibile allocare una matrice dinamicamente in quel modo
per allocarla dinamicamente dovete usare una malloc, ricordandosi poi di fare una free alla fine
Codice:
int i = 0;
int nrow = 0;
int ncol = 0;
/* mi carico nrow e ncol */
int** mat = (int**)malloc(nrow);
for(; i < nrow; i++)
mat[i] = (int*)malloc(ncol);
/* mi ci faccio i miei pastrocchi */
i = 0;
for(; i < nrow; i++)
free(mat[i]);
free mat;
gosh è una vita che non faccio allocazioni dinamiche di matrici ed è tardi, ma dovrebbe essere una cosa così
EDIT: l'esempio sopra riportato presume l'utilizzo del C
in caso di C++ usare new e delete
inoltre non fa nessun controllo sulla corretta esecuzione della malloc per 2 motivi: 1 non avevo voglia, 2 (che è proprio una scusa

) rendere più leggibile il codice