c++bool为什么输入超过1的数第二次没有等待我输入就直接全部输出了?详见内容

bool a = true;
cout << a << endl;
a = false;
cout << a << endl;
cin >> a;
cout << a << endl;
cin >> a;
cout << a << endl;

1.输入1,0正常输出
img

2.输入0,1正常输出

img

3.输入超过1的数它就直接全部输出了,都没有等待我第二次输入就直接全部输出了,这是什么问题?

img

img
4.如果我把最后一个输入输出注释,这时候输入100能正常输出

img

5.如果多增加几个输入输出,那我输入2的时候,它也是把后面全部输出了

img

你后面多加几个键盘输入cin,然后输入3试试。应该把3转为二进制11了,每次cin读取其中1位。