Bonjour;
J'ai fais une liste linéaire chaînée de véhicules ; puis je dois écrire un code pour pouvoir supprimer un véhicule bien déterminé ; sauf que je rencontre DEUX problèmes :
1/ Si ma liste contient UN seul véhicule lorsque je clique sur supprimer la console se plante
2/Si ma liste contient plusieurs véhicules , lorsque je veux supprimer le dernier véhicule que j'ai saisi dans la liste le premier se supprime aussi; ci dessous mon code merci de vouloir bien m'aider
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
case 2:
cout << "nVeuillez saisir l'identifiant du vehicule a supprimer:n";
cin >> idt;
 
 
if (l->GetIdentifiant() == idt)
    l = l->lien;		// l c'est ma liste
q = l;
if (q == NULL)
    cout << "liste vide";
 
else
    while ((q->lien != NULL) & (q->GetIdentifiant() != idt)) {
	p = q;
	q = q->lien;
    }
 
if (nombre_vehi == 1)
    l->lien = NULL;
else
    p->lien = q->lien;
 
_getch();
break;