Allouer statiquement un tableau de taille variable

En fait il est tout a fait possible d'allouer statiquement un tableau dont la taille n'est connue qu'a l'exécution. Pour cela, il faut faire du c99 !!! -std=c99
Et on peut tout simplement écrire :
int taille = 5; int tableau[taille];
Et pour les tableau à plusieurs dimensions, on peut faire:
void utilisatonTableau(int x, int y) { int tableau[x][y]; }
Ceci évite les problèmes d'allocation, mais ne permet pas de l'utiliser en dehors du domaine de validité de la variable le déclarant.