N'oublie pas de vérifier si malloc a bien alloué ta mémoire pour être propre... Et libérer cette mémoire une fois inutilisée en passant. :)
flo850
a mon avis , ca ca marche :
DarkOli a écrit a écrit :
int i; // compteur
int l,c; // nombre de lignes et colonnes
int** t=(int**)NULL;
t=(int**)malloc(sizeof(int*)*l);
for (i=0;i<l;i++) t[i]=(int*)malloc(sizeof(int)*c);
et aprés ca doit marcher.
darkoli
int i; // compteur
int l,c; // nombre de lignes et colonnes
int** t=(int**)NULL;
t=(int**)malloc(sizeof(int*)*l);
for (i=0;i<l;i++) t[i]=(int*)malloc(sizeof(int)*c);
et aprés ca doit marcher.
camarchepoa
en fait je vais faire juste un tableau .. ca serra + simple et ca doit pouvoir marcher ...
camarchepoa
si si je les dealloue qd meme .. mais c vrai que faut faire gaffe pq ca part vite !!
camarchepoa
oui c bien ca ... je pensait que ca faisait des tableaux dont le premier element de chaque etait contenu dans un autre tableau, ce qui faisait un matrice ...apparement non
:cry:
deathsharp
sans compter les fuites de mem parce que jsuis sur que tu desalloue pas ces deux block de memoire...
deathsharp
indice: un seul malloc, pas deux c portenawak
pour ca que je te demandais si c'etait bien du C
regarde bien: tu alloc un tableau de x elements int ( matX ) puis tu alloue y elements ( matY ) fois la taille du pointeur de l'autre tab...
camarchepoa
sinon c peut etre pas comme ca qu'il faut creer une matrice dynamique ... je suis pas sur ...
camarchepoa
vi vi c du C !
ca plante aussi qd les indices i et j commencent a 0 ... etrange ...