Bonjour tout le monde.
J'aurais une question concernant une fonction en C que j'appelerais
merge_list().
Cette fonction est supposée fusionner 2 cellules contigues d'une liste chainée.
struct list{
Bloc b;
list * next;
};
Chaque celulle contient "un bloc" (un bloc est représenté par une structure contenant sa taille (u_int) et son adresse (void*)).
struct bloc{
unsigned int taille;
void *adr;
};
la fonction est supposée fusionner 2 celulles si adresse(b1) +
taille(b1) = adresse (b2) ; pour une liste contenant un certain nombre
de blocs.
je pensais comme signature de cette fonction :
Liste* merge_list (Liste * premier)
premier étant un pointeur sur la premiere cellule de la liste, la
fonction renvoit un pointeur sur la premiere cellule de la nouvelle
liste avec tous les blocs fusionnés.
une idée..? Merci beaucoup.