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 : 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 #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 ; } }
Partager