我想在char中显示每个位.但这不起作用:
char flags = byteFromFile();
for( int i = 0; i < 8; i++ ){
int tmp = ( flags >> i ) & 0x2;
cout << tmp;
}
cout << endl;
Run Code Online (Sandbox Code Playgroud)
这段代码出了什么问题?
我只得到零,但字节的值为3(我用调试器查找).
如果你想显示位,你应该& 0x1而不是& 0x2- 毕竟,你的结果应该是零或一.