Paul Eggert writes: > This expression assumes twos-complement arithmetic. Two's complete arithmetic is de facto standard in C for decades. > But it's clearer if you replace ~0 with -1; -1 means a negative number. ~0 means a number with all bits set. Bruno