bonjour , voilà j'ai un gros problème :sous linux j'ai de gros bug pour compiler ce code tandis que sous windows aucune erreure à la compilation, pouvez vous me dire si vous aussi vous avez des erreures quand vous compiler sous linux ???
Main.c :
graphe.txt :
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
54
55
56
57
58
59
60
61
62
63
64
65 #include <stdio.h> #include <stdlib.h> #include <assert.h> #include <string.h> //liste chainée qui rassemble les villes connexes d'une ville typedef struct ville { int city; //numéro de la ville float dist; //distance entre cette ville et la précédente struct ville *suiv; //maillon suivant }S_Ville; S_Ville ** Charge_Graph(S_Ville ** Graph, char*** Nom_ville, int *Nb_ville_graph) { //déclaration des variables int Nb_suc = 0; FILE* Fichier; S_Ville * tmp = NULL; int i, j; //ouvre le fichier Fichier = fopen("./graphe.txt", "r"); assert(Fichier && "Fichier introuvable"); //récupère le nombre de villes du graphe fscanf(Fichier, "%d", Nb_ville_graph); printf("il y a %d villes.\n",(*Nb_ville_graph)); //alloue la mémoire Graph = (S_Ville**)malloc(sizeof(S_Ville*)); (*Nom_ville) = (char**)malloc(sizeof(char*)); //parcoure chaque ville du graphe for(i=0; i<(*Nb_ville_graph); i++) { //alloue et initialise la liste de successeurs Graph[i] = (S_Ville*)malloc(sizeof(S_Ville)); Graph[i] = NULL; } fclose(Fichier); return Graph; } //============================================================================// // Fonction principale du programme // //============================================================================// int main(void) { //déclaration des variables FILE* Fichier = NULL; //Fichier S_Ville** Graph; //graphe int Nb_ville_graph = 0; //nombre de villes du graphe int i = 0; //boucle char** Nom_ville; Charge_Graph(Graph, &Nom_ville, &Nb_ville_graph); return 0; }
pleaze , Merci
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 14 1 5 1 3 10 2 8 5 7 4 2 7 b 4 4 5 2 5 0 3 12 4 c 4 3 1 1 5 0 7 7 8 d 3 6 4 4 5 2 1 e 3 3 5 5 6 1 5 f 1 4 6 g 1 3 4 h 3 2 8 8 7 0 4 i 3 7 8 10 6 0 5 j 1 10 3 k 5 0 2 8 6 9 3 11 6 12 5 l 2 12 6 10 6 m 3 1 4 10 5 11 6 n 3 1 4 10 5 11 6
ps : je sais que dans le code , il manque des choses au niveau des libérations de mémoire ...
Partager