Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 按位运算符用法_C - Fatal编程技术网

C 按位运算符用法

C 按位运算符用法,c,C,我无法理解这句话的含义。y是一个整数值 不(!)符号代表什么?代码将0转换为1,将所有其他内容转换为0 如果y的最新位是0(即y是2的幂),则y&1将导致0: 对 ......0 0000001 ------- 0000000 因此,if只是测试y是否是2的幂倍数。当数字y为偶数时,条件为true,当数字y为奇数时,条件为false 表情 ......1 0000001 ------- 0000001 表示整数y和1的按位AND。结果实际上等于y的最低有效位。奇数的最后一位设置为1;对于偶数

我无法理解这句话的含义。y是一个整数值


不(!)符号代表什么?

代码
0
转换为
1
,将所有其他内容转换为
0

如果
y
的最新位是
0
(即
y
2的幂),则
y&1
将导致
0

......0
0000001
-------
0000000

因此,
if
只是测试
y
是否是2的幂倍数。

当数字y为偶数时,条件为true,当数字y为奇数时,条件为false

表情

......1
0000001
-------
0000001
表示整数y和1的按位AND。结果实际上等于y的最低有效位。奇数的最后一位设置为1;对于偶数,最后一位始终为零


添加一个不是!运算符反转该位。

提示:y&1的结果是什么?什么时候才能满足
的要求
是一元运算符,称为not。在谷歌上搜索C运算符一元/位是的,我在想别的事情。谢谢
......1
0000001
-------
0000001
y & 1