L'optimisation proposé par "umfred" est excellente.
Après la phase 1
1 ligne, 1 instruction , on peut optimiser
l'algorithme et l'écriture en utilisant la puissance du C.
(Certains disent qu'une optimisation trop poussé de l'écriture
rend la lecture difficile...) on en est pas là !
pour "DarkPhoenix"
Je trouve dommage que quelqu'un qui ai semble t il de grandes capacités.
Se sente obligé d'utiliser des incivilités ,
généralement réservées aux incompétents
L'explication du "memory leak"
Pour le malloc et le "memory leak" en Français littéral "fuite de mémoire",
langage imagé du style Américain.
Le malloc réserve des morceaux de mémoire , au départ à la suite
les uns des autres.
Lors de la libération (free) le morceau est libéré mais se trouve
généralement entre 2 autres morceaux qui eux ne sont pas libérés.
Lors du prochain malloc si le morceaux libéré est plus grand ou égale.
1)il sera attribué
2)sinon on reprend de la mémoire a la fin.
Dans le premier cas la mémoire supplémentaire du bloc est perdu tant que
l'allocation n'est pas libérée.
Dans le second cas le bloc entier ne peut pas être utilisé pour une allocation
de cette taille.
Ce phénomène est appelé "memory leak"
En résumé une utilisation intense avec de petites allocations suivi d'allocations plus grande, risque de renvoyer une allocations impossible et de gaspiller de la mémoire.
-----