Skip to content
Extraits de code Groupes Projets
Valider 9416f22a rédigé par Louis Fourcade's avatar Louis Fourcade
Parcourir les fichiers

parser qui marche

parent 26ee4c93
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -17,5 +17,7 @@ $(EXECUTABLE): main.o ...@@ -17,5 +17,7 @@ $(EXECUTABLE): main.o
$(CC) $(OPTIONS) -o $@ $^ $(MATH) -g $(CC) $(OPTIONS) -o $@ $^ $(MATH) -g
main.o: adjarray.c
%.o: %.c %.o: %.c
$(CC) $(OPTIONS) -c $^ -g $(CC) $(OPTIONS) -c $^ -g
...@@ -59,13 +59,20 @@ adjlist* readedgelist(char* input){ ...@@ -59,13 +59,20 @@ adjlist* readedgelist(char* input){
g->e=0; g->e=0;
g->edges=malloc(e1*sizeof(edge));//allocate some RAM to store edges g->edges=malloc(e1*sizeof(edge));//allocate some RAM to store edges
while (fscanf(file,"%lu %lu", &(g->edges[g->e].s), &(g->edges[g->e].t))==2) { char line[1000];
while (fgets(line, sizeof line, file)) {
// ignore les commentaires #
if (*line == '#') {continue;}
// récupère les données
if (sscanf(line, "%lu %lu", &(g->edges[g->e].s), &(g->edges[g->e].t))==2) {
g->n=max3(g->n,g->edges[g->e].s,g->edges[g->e].t); g->n=max3(g->n,g->edges[g->e].s,g->edges[g->e].t);
if (++(g->e)==e1) {//increase allocated RAM if needed if (++(g->e)==e1) {//increase allocated RAM if needed
e1+=NLINKS; e1+=NLINKS;
g->edges=realloc(g->edges,e1*sizeof(edge)); g->edges=realloc(g->edges,e1*sizeof(edge));
} }
} }
}
fclose(file); fclose(file);
g->n++; g->n++;
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter