bonjour,
j'essaye en c de faire une lecture d'un fichier de ce type:
#chaine1
4
#chaine2
1 : 5, 2, 4
2 : 8,7
avec le code suivante :

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
main(){
	FILE *fp;
	char s[TAILLE_MAX],s1[TAILLE_MAX],s2[TAILLE_MAX];
	char op1=':';
	char* test;
	char res[50];
	int nbMaxSommets,sommet,NSommet,voisin,NArret;
 
	fp=fopen(nomFichier,"rt");
	while(fp!=NULL) 
	{
		printf("impossible de lire le fichier %s,ressaye svp:\n",nomFichier);
		//printf("Resaisir le nom du fichier pour lire le graphe\n");
		scanf("%s", nomFichier);
		fp=fopen(nomFichier,"rt");
	}
	fgets(s,TAILLE_MAX,fp);
	fscanf(fp,"%d ",&nbMaxSommets);
	creer_graphe(nbMaxSommets,g);
 
	NSommet=0;
	NArret=0;
	fgets(s1,TAILLE_MAX,fp);
	while(!feof(fp))
	{ 
		if(fgets(s2,TAILLE_MAX,fp)!=NULL)
		{
			test=strchr(s2,op1);
			strncpy(res,s2,strlen(s2)-strlen(test));
			sommet=atoi(res);
 
			insert_in_head(-1,(g->listesAdjacences+sommet-1));
 
			char* token = strtok( test, ",: \n");
			while( token != NULL)
			{
				voisin=atoi(token);
 
				insert_in_head(voisin,(g->listesAdjacences+sommet-1));
 
				NArret++;
				token = strtok( NULL, ",-|");
			}
			NSommet++;	
		}
 
	}
	fclose(fp);
 
	printf("----Le Graphe est bien creer----\n");
 
}
ca marche apres fini la lecture il ajoute segmentation default,je sais pas prk?
merci d'avane.