Structure et pointeur en C++
yaobo84
Messages postés
91
Date d'inscription
Statut
Membre
Dernière intervention
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je dois implementer le graphe: initialiser le graphe, ajouter des sommets en des aretes...
voici mes debuts:
struct elementadjacent
{ int info;
struct elementadjacent *suivant;
};
struct sommet
{ int label;
int info;
struct elementadjacent *adj;
struct sommet* suivant;
};
struct graphe
{ int nbSommet;
int nbArete;
int maxSommet;
struct sommet* premierSommet;
struct sommet* dernierSommet;
}
//initialisation du graphe
void InitGraphe(graphe *g)
{ g=new graphe;
(*g).nbSommet=0;
(*g).nbarete=0;
(*g).maxSommet=0;
g.premierSommet=NULL;
g.dernierSommet=NULL;
}
Je voudrais donc savoir est-ce que ma procedure InitGraphe est bien implementer? et commet proceder pour ecrie la procedure ajoutSommet(graphe* g,int S)?
Merci d'avance
je dois implementer le graphe: initialiser le graphe, ajouter des sommets en des aretes...
voici mes debuts:
struct elementadjacent
{ int info;
struct elementadjacent *suivant;
};
struct sommet
{ int label;
int info;
struct elementadjacent *adj;
struct sommet* suivant;
};
struct graphe
{ int nbSommet;
int nbArete;
int maxSommet;
struct sommet* premierSommet;
struct sommet* dernierSommet;
}
//initialisation du graphe
void InitGraphe(graphe *g)
{ g=new graphe;
(*g).nbSommet=0;
(*g).nbarete=0;
(*g).maxSommet=0;
g.premierSommet=NULL;
g.dernierSommet=NULL;
}
Je voudrais donc savoir est-ce que ma procedure InitGraphe est bien implementer? et commet proceder pour ecrie la procedure ajoutSommet(graphe* g,int S)?
Merci d'avance
A voir également:
- Structure et pointeur en C++
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Pointeur souris - Guide
- Curseur Windows 10 : comment bien voir la souris à l'écran - Guide
- Structure d'un rapport de stage - Guide
- Trouvez l'erreur dans la structure du document et corrigez-la. - Forum Word
1 réponse
bonjour, ça me semble pas mal, mais là tu fait du C plus que du C++ (à part le new).
au lieu de (*g).sommet, utilise la notation g->sommet, c'est plus simple et plus lisible.
d'ailleurs, les deux dernière lignes (g.premierSommet) sont fausses.
Du point de vue structure général du code, il faut mieux allouer l'espace mémoire dans la porté où tu le détruit. à ta place, j'enlèverai le 'new' de InitGraph. Si tu le conserve, fait une fonction FreeGraph.
Pour ta fonction ajoutSommet(), je ne sais pas, "int S" n'est pas suffisant pour définir un sommet.
au lieu de (*g).sommet, utilise la notation g->sommet, c'est plus simple et plus lisible.
d'ailleurs, les deux dernière lignes (g.premierSommet) sont fausses.
Du point de vue structure général du code, il faut mieux allouer l'espace mémoire dans la porté où tu le détruit. à ta place, j'enlèverai le 'new' de InitGraph. Si tu le conserve, fait une fonction FreeGraph.
Pour ta fonction ajoutSommet(), je ne sais pas, "int S" n'est pas suffisant pour définir un sommet.