re !

je ne comprends pas l'affichage d'un code que j'ai fait :

voici le code :

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
 
#include<stdio.h>
 
#include<stdlib.h>
 
#include<string.h>
 
void sauterdeuxlignes(char*,FILE*);
 
static void clean (char*,FILE*);
 
int main (void)
{
 
 FILE*fpaero;
 
 int i=0,j=0,k=0;
 
 char *chaine=  (char *)malloc(200*sizeof(char)+1),*IDtemp=  (char *)malloc(200*sizeof(char)+1);
 
 if((fpaero=fopen("C:\\Program Files\\Microsoft Visual Studio\\MyProjects\\testlogincorrigé\\tlogcorr\\FicCaracteristiquesAeroport.txt","r"))==NULL)
 {
 
  fprintf(stderr,"\nerreur impo lire fich FicCaracteristiquesAero.txt\n");
 
  return(EXIT_FAILURE);
 } 
 
 sauterdeuxlignes(chaine,fpaero);
 
 while(fgets(chaine,sizeof (chaine),fpaero)!=NULL)
 {
 
  clean(chaine,fpaero);
 
  puts(chaine);
 }
 return 0;
}

avec les fonctions clean et sauterdeux lignes:

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
 
void sauterdeuxlignes(char* chaine,FILE *flot)
{
 fgets(chaine,sizeof chaine,flot);
 
 clean(chaine,flot); 
 
 fgets(chaine,sizeof chaine,flot);
 
 clean(chaine,flot); 
}
 
static void clean (char *s, FILE *fp)
{
   /* search ... */
   char *p = strchr (s, '\n');
 
  if (p != NULL)
  {
   /* ... and kill */
   *p = 0;
  }
  else
  {
   /* purge */
   int c;
 
   while ((c = fgetc(fp)) != '\n' && c != EOF)
   {
   }
  }
}

le fichier que j'ouvre est le suivant :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Num Aeroport  Nom Aeroport  Fuseau horaire  Heure ouverture  Heure Fermeture
====================================================================================================
2  Roissy  GMT + 0  00:00  23:59
3  Bruxelles  GMT + 0  06:00  22:59
5  Sydney  GMT + 10  00:00  23:59
6  Le Caire  GMT + 2  03:00  22:59
7  New York  GMT - 5  00:00  23:59
8  Montreal  GMT - 5  01:00  23:59
9  Mexico  GMT - 6  03:00  22:30
10  Tunis  GMT + 0  05:00  23:00
11  Cape Town  GMT + 0  02:00  23:59
12  Kigali  GMT + 0  04:00  21:45
13  Abidjan  GMT + 0  01:00  23:59
champs séparés par deux tabulations

et le probleme c'est que mon code m'affiche seulement les numeros au debut de chaque ligne...

bon en soi c'est bien vu que par la suite je dois les isoler et les mettre dans un tableau mais bon je sais pas comment le programme lit dans mes pensées et les isole tout seul lool