Problème lecture fichier avec fscanf
Bonjour j'ai un problème avec une fonction d'un de mes programmes, elle est censé lire un fichier en entrée ( une matrice de 3 par 3) et retourné un tableau contenant les valeurs de ce fichiers, je n'arrive cependant pas à lire mon fichier (cela me produit un segfault)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| int** getKernel(char* kernel)
{
int i = 0;
int j = 0;
int **p = (int**) malloc(sizeof (int) * 3);
FILE *file = NULL;
file =fopen(kernel,"r");
for ( i = 0; i < 3; i++)
{
puts("yolo");
p[i] = (int*) malloc( sizeof (int) * 3);
for ( j = 0; j < 3; j++)
{
printf("%d %d", i, j);
puts("yolo");
fscanf(file, "%d", &p[i][j]);
//printf("%d", p[i][j]);
}
}
//fclose(file);
return p;
} |
J'ai éussi à isolé le problème sur le fscanf, mais je ne vois vraiment pas pourquoi il segfault, de plus le fichier ne veut pas se fermer ( fclose) sinon il se segfault aussi. Si vous pouviez m'aider. Merci d'avance