Bonjour à tous,
voilà mon problème, je code un système gérant des paris, et je stocke ces paris dans un fichier, je n'ai aucun problème pour les écrire dans le fichier, mais je n'arrive pas à les recopier convenablement dans une structure de donnée, en effet, je n'arrive pas à faire en sorte de faire des fgets jusqu'à la fin du fichier, je ne sais pas quelle condition d'arrêt mettre sur ma boucle, j'ai essayé avec feof, avec !EOF, mais rien ne marche, j'avoue que je ne sais plus trop quoi faire, voici le sous-programme concerné par mon problème, si quelqu'un peut m'aider, je lui en serait très reconnaissant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 void creerrecupparis(S_paris** ptr_liste) { int veri=0; S_paris* ptr_new=NULL; FILE* copieur; copieur=fopen("listeparis.txt", "r"); while(veri==0) { ptr_new=malloc(sizeof(S_paris)); fgets(ptr_new->question, 100, copieur); ptr_new->question[strlen(ptr_new->question)-1]='\0'; if(ptr_new->question!=NULL) { fgets(ptr_new->prop1, TAILLE, copieur); ptr_new->prop1[strlen(ptr_new->prop1)-1]='\0'; fgets(ptr_new->prop2, TAILLE, copieur); ptr_new->prop2[strlen(ptr_new->prop2)-1]='\0'; fgets(ptr_new->prop3, TAILLE, copieur); ptr_new->prop3[strlen(ptr_new->prop3)-1]='\0'; ptr_new->repliste=NULL; ajouterparis(ptr_liste, ptr_new); creerecupreparis(ptr_liste, copieur); } else { veri=1; } } fclose(copieur); }
PS:Je tiens à préciser que ce programme n'est pas récursif, on m'avait fait la remarque mais il s'agit juste d'un autre sous programme au nom similaire. Encore merci par avance pour votre aide
Partager