#include <bitset>
#include <assert.h>
#include <stdio.h>
using namespace std;
int main()
{
    bitset<128> bs(42);
    bs[11]=0;
    bs[12]=1;
    assert(bs[12]==1);
    printf("bs[11]=%d\n", bs[11]);
    printf("bs[12]=%d\n", bs[12]);
    return 0;
}
Why can't I simply get 0 or 1 as output ?

 
     
     
    