Closed. This question needs to be more focused。它当前不接受答案。
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
在11个月前关闭。
如果
我假设它必须对二进制文件执行某些操作,但是不知道确切是什么?
提前致谢!
通过在IDEOne上运行代码来确认
输入值
输出量
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
在11个月前关闭。
如果
s &= ~1U
,这段代码会做什么?我假设它必须对二进制文件执行某些操作,但是不知道确切是什么?
提前致谢!
最佳答案
为了简单起见,在这里我以1字节二进制(8位)的形式写出来。
s = s & ~1 // U means "unsigned"
s = 8 & ~(0b00000001) // Here is the binary representation of 1
s = 8 & 0b11111110 // ~1 is 254
s = 0b00001000 & 0b11111110
s = 0b00001000
s == 8 // Final Answer.
通过在IDEOne上运行代码来确认
输入值
#include <stdio.h>
int main(void) {
int s = 8;
s &= ~1U;
printf("%d\n", s);
return 0;
}
输出量
Success #stdin #stdout 0s 9424KB
8
关于c - C中的运算符&=和〜1U ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55172097/
10-09 19:18