chainage maillon fonction insertion
Bonjour à tous,
j'ai besoin d'aide pour mon code c++, je dois grâce aux enregistrements de maillonT et chainageT, créer une fonction insertion permettant d'insérer un élément de type T EN TETE du chainage .
Je n'arrive pas à compiler, il y a surement un problème avec mon pointeur, je pensais pourtant que à la base il fallait dire que ch.tete devient mem(pm).succ et que pm devient du coup la tete du maillon
Merci d'avance pour votre aide
Code:
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
|
#include<stdio.h>
#include<malloc.h>
typedef int T;
// enregistrement du maillon
typedef struct maillonT {
T elt;
maillonT *succ;
} maillonT;
/enregistrement du chainage
typedef struct chainageT {
maillonT *tete;
maillonT *queue;
int nb_elt;
} chainageT;
// ajout d'un nouvel élément en tête du chainage ch
void insertionT(chainageT & ch,T e){
//variable, pointeur vers maillonT
ch.nb_elt=0;
maillonT *pm;
pm = new maillonT;
pm->succ = ch.tete;
ch.tete = pm;
pm->elt = e;
nb_elt=nb_elt+1; //incrémentation du nombre d'élément du chainage
// si la liste est vide
if (ch.tete==NULL){
ch.tete = pm ;
}
} |