Bonsoir,

Mon problème est le suivant, j'aimerai faire une fonction qui concatène deux liste et je voudrais construire ceci non pas en modifiant l'une des deux listes fournit en paramètre mais en créant une liste vide et en ajoutant un par un les éléments des deux listes à la fin de la liste vide. J'espère avoir été clair

Voici le code:
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
Liste ConcateneListe(Liste L1,Liste L2)
{
	Liste CopieDeL1 = L1;
	Liste CopieDeL2 = L2;
	Liste ListeResultat;
 
	if (CopieDeL1 == NULL)
	{
		while (CopieDeL2->suiv != NULL)
		{
			insererALaFinDeLaListe(&ListeResultat, CopieDeL2->valeur);
		}
	}
	else
	{
		ListeResultat = L1;
		while (CopieDeL2->suiv != NULL)
		{
			InsererALaFinDeLaListe(AdresseDernierElement(ListeResultat), CopieDeL2->valeur);
		}
	}
	return ListeResultat;
}
Et gcc me donne cette erreur:

attention : passing argument 1 of ‘InsererALaFinDeLaListe’ from incompatible pointer type
le prototype de ma fonction "Inserer" est:

InsererALaFinDeLaListe(Liste *L, int Element)
Merci de l'aide que vous pourrez m'apporter