Je n'ai pas regardé dans le détail, je laisse cela aux bon spécialistes du C de ce forum.
Juste quelques remarques sur la nomenclature :
Code :
- typedef struct Tree
- {
- Leaf *first;
- } Tree;
|
Il ne faut pas nommer de la même manière la structure (le premier Tree) et l'espace alloué pour la structure (le dernier Tree). Une convention assez répandue est de nommer la structure en la faisant commencer par un tiret de soulignement, ce qui donnerait :
Code :
- typedef struct _Tree
- {
- Leaf *first;
- } Tree;
|
En plus, il y a une confusion à cause du typedef.
Pour infos, le typedef n'est pas obligatoire, mais les profs l'aiment beaucoup. Quand on l'utilise, une convention assez répandue est de donner un nom tout en majuscules.
Si on utilise un typedef, alors, il dvient inutile de répeter le mot struct. Gagner ces 6 lettres est un avantage (pour certains (personnellement, je n'utilise japmais typedef car je trouve que cela rend le code moins lisible en cachant ce mot struct, mais c'est un débat de trolls)).
Citation :
Leaf *leaf ... File *file;
|
Il vaut mieux éviter d'avoir des noms qui se ressemblent trop, car on a vite fait d'oublier la majuscule ou la minuscule.
Message édité par olivthill le 03-11-2010 à 09:41:59