Originariamente inviato da pixellosa
codice:
double** reAllocaMatrice(double **mat, int righe, int colonne){
	int i;

	mat = (double**)realloc(mat, sizeof(double*)*righe);
	if (mat == NULL){
		puts("Spazio insufficiente");
		exit(0);
	}

	for (i=0; i<righe; i++){
		mat[i] = (double*)realloc(mat, sizeof(double)*colonne);
		if (mat[i] == NULL){
			puts("Spazio insufficiente");
			exit(0);
		}
	}	
	
	return mat;
}
Intanto posso assicurarti che il concetto dell'utilizzo di un array di puntatori che puntano ad altri array per gestire un array bidimensionali è giusto. Avevo già spiegato la questione in <questo> thread.

Comunque l'errore l'ho segnato in rosso. Guarda cosa hai cercato di riallocare nella seconda realloc.