Erreur programme C AIDE - C - Programmation
Marsh Posté le 13-05-2008 à 20:12:59
J'en sais trop rien de ce qui merde exactement, le seul truc qui me parait louche c'est ton incrément de i dans ta fonction lecture : l'indice 0 de ton tableau n'est jamais initialisé.
Marsh Posté le 13-05-2008 à 21:39:46
cette ligne
while (!feof(f1))
est fausse, ce n'est pas comme celà qu'on teste la fin de fichier
Une méthode possible est ceci
Code :
|
Ce n'est peut-être pas ça l'erreur du programme que tu recherchais , mais c'en était quand même une.
Marsh Posté le 13-05-2008 à 21:48:55
Trap D a écrit : cette ligne
|
Ah bon t'es sur pour le test ? c'est le prof qui nous a dis ca
Marsh Posté le 13-05-2008 à 21:54:29
Oh tu sais, les profs...
feof() est une fonction de test de fin de fichier.
Ce qui veut dire qu'elle ne sert pas à déterminer une fin de lecture. Elle permet simplement de déterminer POURQUOI une lecture s'arrête.
Par exemple, si la lecture s'arrête parce qu'il y a une erreur quelconque (filesystem corrompu, problème de support, etc), alors feof() retournera toujours 0 : il n'y a pas eu d'échec parce que EOF a été rencontré.
Bref, il faut bel et bien tester le code retour de fgets() comme Trap D l'indique (ou de toute autre fonction de lecture), PUIS, une fois sorti de ta boucle, tu pourras si tu le souhaites écrire une gestion d'erreur pour vérifier la raison de cette fin de lecture, et aviser (il y a toute une foule de cas où c'est utile de tester feof et ferror).
edit : au fait, si ton fichier se termine ainsi :
ceci est la dernière ligne de ton fichier\n |
Alors la dernière itération de ta boucle traitera une ligne vide. Ton fscanf() partira dans les choux, et tu auras n'importe quoi dans tes flottants. Je parie que ton erreur est là.
Marsh Posté le 13-05-2008 à 18:53:57
Bonjour, voilà j'ai un programme a C à faire pour les cours, cependant j'ai un pu**** d'erreur et j'arrive vraiment pas a voir ou elle est ca fait bien 1H que je suis dessus ca doit vraiment etre un truc a la con je pense , je dois afficher des float et il me sort ca : Valeur de ty[49] : -1.#IND00, impossible de trouver
Si quelqu'un veut bien y jetter un coup d'oeil ca m'arrangerais c'est la méthode d'interpolation de lagrange
ERREURS :
[b]Erreurs :
Suite du programme
Désolé pour le pavé j'ai mis en gras la ou se situent les problemes, enfin je pense , merci de votre aide
Message édité par gilou le 13-05-2008 à 20:07:39