int temp = 0x5E; // in binary 0b1011110.
有没有这样一种方法可以判断temp中的位3是1还是0,而不需要位移位和掩蔽.
我只是想知道是否有一些内置函数,或者我是被迫自己写一个.
int temp = 0x5E; // in binary 0b1011110.
有没有这样一种方法可以判断temp中的位3是1还是0,而不需要位移位和掩蔽.
我只是想知道是否有一些内置函数,或者我是被迫自己写一个.
在C语言中,如果要隐藏位操作,可以编写一个宏:
#define CHECK_BIT(var,pos) ((var) & (1<<(pos)))
用这种方式判断右端的nth位:
CHECK_BIT(temp, n - 1)
在C++中,您可以使用std::bitset.