Я работаю над микроконтроллером только с 2 КБ SRAM и отчаянно нуждаюсь в сохранении некоторой памяти. Попытка выяснить, как я могу поместить значения 8 0/1 в один байт с использованием битового поля, но не могу его полностью реализовать.
struct Bits
{
    int8_t b0:1, b1:1, b2:1, b3:1, b4:1, b5:1, b6:1, b7:1;
};
int main(){
    Bits b;
    b.b0 = 0;
    b.b1 = 1;
    cout << (int)b.b0; // outputs 0, correct
    cout << (int)b.b1; // outputs -1, should be outputting 1
}
Что дает?
