Sally (./279) :
Ah... ah oui mince autant pour moi (mais bon c'est tordu
)
du coup il me semble que c'est équivalent à for (i >>= 1; i; i >>= 1) non ?
(qui est certes un peu redondant et un peu plus long, mais me semble néanmoins plus clair, enfin ce que j'en dis...)
Oué mais la version claire ce serait:
for (; i > 1; i /= 2)
Avec i non signé, bien sûr. Mais ça reste assez horrible à lire globalement, surtout que i désigne habituellement un index et devrait donc évoluer linéairement. Sinon >>= 1 peut être mieux pour mettre l'emphase sur le côté logique de l'opération.