Bonjour a tous,
voila mon soucis et que j'ai besoin de créer un tableau dynamique à double dimension.
ensuite j'utilise une fonction pour allouer l'espace mémoire au tableau :
Code : Sélectionner tout - Visualiser dans une fenêtre à part int **tab=NULL;
tous ça marche parfaitement(même si j'ai pas encore mis les teste ==NULL après chaque malloc) le soucis vient ensuite quand j'appelle la fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 void partition (int x, int y, int ** tab) { int i,j; int c=combinaisons(x,y); tab=(int**)malloc(sizeof(int*)*c); for (i=0;i<c;i++) { tab[i]=(int*)malloc(sizeof(int)*x); for(j=0;j<x;j++) { tab[i][j]=1; } printf("\n ligne %d ", i); } }
le soucis c'est que il rentre bien dans le if, comme si je n'avais pas allouer d'espace mémoire au tableau.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 partition (x,y,tab); if (tab==NULL){printf("NULL");}
comment résoudre le problème?
(je croyais qu'il suffisait de passer le nom du tableau ou pointeur dans une fonction pour que celui ci soit modifié (et nom pas comme un entier par exemple ou on doit passer son adresse en paramètre))
merci d'avance
Yann
Partager