in reply to [Way OT] C: Arrays of bitfields? (Updated:Please ignore!)

All addressing in C is by the byte as the smallest unit (sizeof(char) is one by definition). You can't take address of a bitfield, or sizeof a bitfield. So, no array of bitfields. But underneath, bitfield access involves a shift-and-mask in any case, so there's no problem with explicit shifts like n = (uv >> (6*i)) & 0x3f.

As far as tricks go, well you might use fd_set and related macros for a small array of booleans, but that could be seen as a slipshod misapplication.