erreur de segmentation sur matrice - C - Programmation
Marsh Posté le 30-05-2013 à 15:16:59
Laisse-moi deviner. Ta variable "n" stocke le nombre de lignes qu'il y a dans ton fichier?
Cette instruction va alloueur la mémoire sur la pile:
Code :
|
Si la mémoire est insuffisante = crash. Bref, utilise malloc()
Marsh Posté le 30-05-2013 à 15:02:08
Bonjour,
A partir d'un fichier.txt, j'extrait les valeurs en utilisant char (chaine de caractère) que je nomme tampon.
Voici mon code
Code :
float f1, f2, f3,f4,f5;
f1 = strtof (tampon, &pEnd);
f2 = strtof (pEnd, &pEnd);
f3 = strtof (pEnd, &pEnd);
f4 = strtof (pEnd, &pEnd);
f5 = strtof (pEnd, NULL );
/* /\* printf ("%f %f %f", f1 ,f2,f3); *\/ */
float tab[n+50][5];
tab[i][0] =f1;
tab[i][1] =f2;
tab[i][2] =f3;
tab[i][3] =f4;
tab[i][4] =f5;
Grace à strtof , je convertit la chaine en float. Je cré ensuite un tableau pour stocker mes floats.
Or lorsque le fichier est très grand, plusieurs milliers de lignes, j'ai le message d'erreur suivant qui apparait :Erreur de segmentation ./$TEST_EXEC.
Merci pour votre aide