Info pour réalloc en c
SOUMbelgique
Messages postés
18
Statut
Membre
-
SOUMbelgique Messages postés 18 Statut Membre -
SOUMbelgique Messages postés 18 Statut Membre -
Bonjour,
les amis
voilà j'aurais voulu savoir comment faire mon programme pour avoir tous en dynamique.
c'est a dire: je voudrais que le programme indique: taper sur "e" pour un nouvel éléments dans le tableau ou bien taper "t" pour un nouveau tableau. tout cela avec des pointeurs de pointeur.
je donne mon code qui tourne seulement avec du statique.
merci à vous de m'aider
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <alloc.h>
void main(void)
{
int Nbtab,Ntab,Nelem; //nbre tab - indice déplacement tab - element
int *ptaille, **pptab; // génère le tableau de mémorisation des taille - le tableau de pointeurs
clrscr();
printf("Nombre de tableaux a encoder: ");
scanf("%d",&Nbtab); getchar();
if(!(ptaille = (int *)malloc(Nbtab*sizeof(int)))) exit(0);
if(!(pptab = (int **) malloc(Nbtab*sizeof(int *)))) exit(0);
for (Ntab=0;Ntab<Nbtab;Ntab++)
{
printf("\nTab %d\n Nombre d'elements: ",Ntab+1);
scanf("%d",&ptaille[Ntab]); getchar();
if(!(pptab[Ntab] = (int *) malloc(ptaille[Ntab]*sizeof(int)))) exit(0);
for(Nelem=0;Nelem<ptaille[Ntab];Nelem++)
{
printf("Introduction de l'element %d: ",Nelem);
//scanf("%d",&pptab[Ntab][Nelem]); getchar();
//scanf("%d",&(*(pptab+Ntab))[Nelem]); getchar();
scanf("%d",*(pptab+Ntab)+Nelem); getchar();
}
}
for (Ntab=0;Ntab<Nbtab;Ntab++)
{
printf("\nTab %d\n Nombre d'elements: %d\n",Ntab+1,ptaille[Ntab]);
for(Nelem=0;Nelem<ptaille[Ntab];Nelem++)
{
printf("\nAffichage de l'element %d: %d",Nelem,pptab[Ntab][Nelem]);
}
}
getch();
}
les amis
voilà j'aurais voulu savoir comment faire mon programme pour avoir tous en dynamique.
c'est a dire: je voudrais que le programme indique: taper sur "e" pour un nouvel éléments dans le tableau ou bien taper "t" pour un nouveau tableau. tout cela avec des pointeurs de pointeur.
je donne mon code qui tourne seulement avec du statique.
merci à vous de m'aider
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <alloc.h>
void main(void)
{
int Nbtab,Ntab,Nelem; //nbre tab - indice déplacement tab - element
int *ptaille, **pptab; // génère le tableau de mémorisation des taille - le tableau de pointeurs
clrscr();
printf("Nombre de tableaux a encoder: ");
scanf("%d",&Nbtab); getchar();
if(!(ptaille = (int *)malloc(Nbtab*sizeof(int)))) exit(0);
if(!(pptab = (int **) malloc(Nbtab*sizeof(int *)))) exit(0);
for (Ntab=0;Ntab<Nbtab;Ntab++)
{
printf("\nTab %d\n Nombre d'elements: ",Ntab+1);
scanf("%d",&ptaille[Ntab]); getchar();
if(!(pptab[Ntab] = (int *) malloc(ptaille[Ntab]*sizeof(int)))) exit(0);
for(Nelem=0;Nelem<ptaille[Ntab];Nelem++)
{
printf("Introduction de l'element %d: ",Nelem);
//scanf("%d",&pptab[Ntab][Nelem]); getchar();
//scanf("%d",&(*(pptab+Ntab))[Nelem]); getchar();
scanf("%d",*(pptab+Ntab)+Nelem); getchar();
}
}
for (Ntab=0;Ntab<Nbtab;Ntab++)
{
printf("\nTab %d\n Nombre d'elements: %d\n",Ntab+1,ptaille[Ntab]);
for(Nelem=0;Nelem<ptaille[Ntab];Nelem++)
{
printf("\nAffichage de l'element %d: %d",Nelem,pptab[Ntab][Nelem]);
}
}
getch();
}
A voir également:
- Info pour réalloc en c
- Crystal disk info - Télécharger - Informations & Diagnostic
- Info pc - Guide
- Wifi info view - Télécharger - Divers Réseau & Wi-Fi
- Info free: votre encours sur le service internet est supérieur à 10 € ✓ - Forum iPhone
- Info 38028 - Forum Mobile
2 réponses
voilà le début de mes essais:
mais je ne comprend pas comment se passe le réalloc
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <alloc.h>
void main(void)
{
//int Nbtab,Ntab,nelem; //nbre tab - indice déplacement tab - element
int nelem=0, indtab=0,Ntab=0,i=0;
int **pptab ;
if(!(pptab =(int **)malloc(sizeof(int* )))) exit(0);
for(i=0;i<100;i++)
{
tabl: printf("tableau n: %d\n ",Ntab+1);
scan: scanf("%d",&pptab[indtab][nelem]); getchar();
bibi: switch(pptab[indtab][nelem])
{
case 65: indtab = realloc( pptab, sizeof(int) );
nelem++;
goto scan;
case 74: pptab =(int **)realloc (pptab,sizeof(int));
indtab++;
Ntab++;
goto tabl;
default: goto bibi;
}
}
}
mais je ne comprend pas comment se passe le réalloc
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <alloc.h>
void main(void)
{
//int Nbtab,Ntab,nelem; //nbre tab - indice déplacement tab - element
int nelem=0, indtab=0,Ntab=0,i=0;
int **pptab ;
if(!(pptab =(int **)malloc(sizeof(int* )))) exit(0);
for(i=0;i<100;i++)
{
tabl: printf("tableau n: %d\n ",Ntab+1);
scan: scanf("%d",&pptab[indtab][nelem]); getchar();
bibi: switch(pptab[indtab][nelem])
{
case 65: indtab = realloc( pptab, sizeof(int) );
nelem++;
goto scan;
case 74: pptab =(int **)realloc (pptab,sizeof(int));
indtab++;
Ntab++;
goto tabl;
default: goto bibi;
}
}
}