Quand un langage n'offre pas la possibilité de réaliser une allocation dynamique, l'usage est de définir un tableau d'une taille connue et suffisamment grande pour convenir dans la plupart des cas ; on dit qu'on réserve de la place mémoire pour ce tableau, mais on initialisera autant d'éléments de ce tableau que nécessaire, dans la limite de cette taille :
void f() {
double t[1000];
int n,i;
scanf("%d", &n);
if (n>0 && n<=1000) {
for (i=0; i<n; i++) {
scanf("%lf",&t[i]);
}
} else {
printf("la dimension doit être comprise entre 1 et 1000\n");
}
}
On verra plus loin une méthode d'allocation dynamique plus intéressante, mais il n'y a de toute façon pas en C de tableau dynamique.