25 septembre 2006

Comment définir une structure qui pointe sur elle-même en utilisant typedef ?

Il y a plusieurs façons correctes de le faire, le problème est que dans la définition de la structure avec un typedef, le type n'est pas encore défini.

Une solution consiste à déclarer le type de la structure avant sa définition, avec un pointeur :

    typedef struct s_cell * p_cell;
typedef struct s_cell {
int info;
p_cell next;
} cell;

on peut ensuite délcarer naturellement deux variables :

cell cellule;
p_cell p_cellule;

Aucun commentaire: