Pour aller plus loin
15 Apr. 2007
- Auteur : Hyacinthe MENIET
- Responsable : TrustRobot
- Score ( voter ) :



- Connexes : Même auteur | Même responsable | Historique
1. Tableaux dynamiques en C :
Dans un programme C, vous devez déclarer tous les éléments dont vous avez besoin en début de programme ce qui permet de réserver suffisamment de mémoire pour toutes les variables. Le problème est que si en fonction des exécutions vous avez besoin tantôt d'un tableau de 20 cases et la prochaine fois d'un autre de 100 cases, vous devez en déclarer un de 100 cases et pleurer sur les 80 cases qui seront "gaspillées" une fois sur 2. Avec les tableaux dynamiques, ce problème trouve une solution, car ils vous permettent de fixer la taille du taille pendant l'exécution. Comment faire ? Avec malloc :#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int *tab;
int n,num,i;
num=1;
for (n = 3 ; n <= 5 ; n++)
{
if (!(tab=(int *) malloc(n*sizeof(int)))) {printf("Pb d'allocation\n"); exit(1);}
printf("Le tableau %d a %d éléments :\n\n", num,n);
for (i = 0 ; i <= n-1 ; i++)
{
*(tab+i)=i+1;
printf("%d\n",*(tab+i));
}
num++;
printf("\n");
free(tab);
}
return(1);
}
Le programme affiche :
Le tableau 1 a 3 éléments :
1
2
3
Le tableau 2 a 4 éléments :
1
2
3
4
Le tableau 3 a 5 éléments :
1
2
3
4
5
«« Précédent Sommaire