Voila mon programme ! il compile (sans erreur) mais l'exécution se bloque quand elle arrive à " fwrite(&x,sizeof(abonne),1,f); "
je ne sais pas quelle est l'erreur !!!!!!!

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# include <stdio.h>
# include <string.h>
# include <conio.h>
# include <stdlib.h>
 
typedef struct 
{
   char nom [20] ;
   char adresse [20];
   int nbpassage;                   /* pas encore payé */
   int num;
}abonne;
 
void creation ( abonne x, FILE *f)
{
   int i=1;
   char c;
 
   do    
   {
      printf("donner le nom de %d eme abonnee :\n",i);
      scanf("%s",x.nom);
      printf("donner l'adresse de l'abonnee:\n");
      scanf("%s",x.adresse);
      printf("donner le nombre de passage non paye de l'abonnee:\n");
      scanf("%d",&x.nbpassage);
      printf("donner le numero de l'abonne dans le fichier \n");
      scanf("%d",&x.num);
      fwrite(&x,sizeof(abonne),1,f);
      i++;
      printf("voulez vous saisir un autre abonne  o/n:\n");
      c=getch();
   }while(c=='o'||c=='O');
 
   fclose(f);
}
 
int main ()
{
   FILE *fichier;
   abonne a;
 
   fichier = fopen("c:/fichier.txt","w+");
   if ( fichier = NULL )
   {
      printf("fichier inexitant !");
      exit(1);
   }
   else
   {
      creation(a,fichier);
   }
}
SVP comment résoudre ce pb ?