Bonjour,
Je suis confronté à une erreur de segmentation et bien que je l'ai localisée, je n'arrive pas à la comprendre, je vous donne la partie de mon code incriminée en espérant que quelqu'un puisse m'eclairer :
De plus je ne peux même pas faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 //j'ai declaré en variable globale : int** lignes=NULL //puis dès que je connais m grâce à un fscanf() : lignes=malloc(m*sizeof(int*)) if (lignes==NULL) return -1; //Ici il n'y a pas d'erreur puis, lorsque je fais : lignes[i]=malloc(k*sizeof(int)); //j'ai mon erreur...
J'ai également une erreur de segmentation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 printf("test : %d\n",*lignes[i]);
N'étant pas très au fait de ce qui se passe dans la bête lorsque je lance le programme, j'ai quand même essayé de comprendre et si je ne me trompe pas, cela veut dire que je tente d'accéder à une zone de la mémoire à laquelle je n'ai justement pas le droit d'accéder...
Or, comme l'allocation n'échoue pas, j'ai logiquement "réservé" cette zone... alors pourquoi je ne pourrais pas y accéder ?
Je vous remercie d'avance de prendre le temps de me lire,
Cordialement,
Adrien.
Partager