Przydzielanie pamięci dla macierzy 2d za pomocą 1 wywołania malloc

We can allocate memory for 2d matrix using 1 malloc call as
int (*a)[5];
int i,j;

a = malloc (sizeof (int *) * 5); // przydzielanie 5 wskaźników, a każdy wskaźnik wskazuje tablicę 5 intów

Jak możemy uwolnić tę pamięć przydzieloną pomyślnie? Użycie wolnego (a) daje błąd czasu wykonywania

Użycie dla (i = 0; i <5; i ++) za darmo (a [i]);

bezpłatne (a);

Daje to również błąd czasu wykonywania

questionAnswers(1)

yourAnswerToTheQuestion