Je sais pas si ça sert à quelquechose mais quant j'ai beaucoup de booleens à gérer, je les mets en structure de bits sur 1 octet :
struct BOOLS_TAG
{
BYTE b1 : 1;
BYTE b2 : 1;
BYTE b3 : 1;
BYTE b4 : 1;
BYTE b5 : 1;
BYTE b6 : 1;
}BOOLS = {0, 0, 1, 0, 1, 1};
// (...)
if( BOOLS.b1 == FALSE )
BOOLS.b3 = TRUE;
J'image qu'il faut gérer l'alignement avec un #pragma pour que cela soit vraiment efficace, mais bon...