8Fermer10
Kevin KoflerLe 26/03/2008 à 23:57
Godzil (./8) :
a) while(x & i<n)

reviens a faire while((x & i) < n)

Non.
Ça revient à faire x & (i<n).
b) while(x | i>=n)

reviens a faire while((x | i) >= n)

Et ça, ça revient à faire x | (i >= n).

C'est une erreur de conception qu'on reproche souvent au C, les opérateurs bit par bit se comportent comme les opérateurs logiques par rapport aux comparaisons, et ce n'est en général pas ce qu'on veut ou attend.