if(k==0&&(*p>>(7-i))&1==1)怎么理解

其中&1==1不知道什么意思,&都是什么时候会用到,我傻了,求答

相当于

if ( (k == 0) && (( (*p) >> (7-i) ) & (1==1)) )

这里&是位与运算

&是按位与,即把数转换为二进制每位比较
如十进制的"5"按位表示就是"00000101"。
两者相与时,都是1时结果为1,不全是1时结果为0;两者相或时,都是0时结果为0,不全是0时结果为1。
举例:十进制的"6"和"10"按位与、或分别是,"00000110"和"00001010"按照每一位进行与、或,结果分别是"00000010"和"00001110",即"2"和"14"。
如有帮助采纳一下哦!

直接搜运算符优先级。&是算数 与或非 中的与。

&1==1,&是并的意思