voronElf, полностью согласен с тобой, но как я писал выше:
Для наглядности работа функций реализована немного по разному.
Это удобно если читаешь биты в цикле, выглядит нагляднее и на
операциях сдвига описаниях констант экономия ...
for (int i=0; i<sizeof(ulong)*8; i++)
{
if (rights&0x1) {do ...}
rights >>= 1;
}
PS: isnt it?
PS2: поправился