salut tt le monde
je souhaite créer un tableau dont le nombre de cases n'est pas connu au depart:
solution: Pointeur sans doute
alors j'ai fait:
1 2
| typedef int *ptr_int;
ptr_int tab; |
je suppose qu'au depart je n'ai besoin que d'une seule case :
tab=malloc(1*sizeof(int));
je souhaitrerai augmenter la taille de tab chaque fois que l'utilisateur veut saisir d'autres valeurs:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| int n=0;
while(c!=2)
{
printf(" entrer une valeur");
scanf("%d",&tab[n]);
n++;
printf("Ajouter d'autre valeur ? 1:Oui 2:Non");
scanf("%d",&c);
if (c==1)
{
// si oui :je demande plus d'espace memoire pour l'utilisateur
tab=malloc(n+1*sizeof(int));
}
} |
apres la saisie, et quand j'affiche le contenu de tab je trouve que quelques valeurs que j'ai introduit ont été modifiées.
aidez moi pour augmenter la taille du tableau sans rencontrer ce genre d'erreurs.
Merci.
Partager