C语言中 & 和 &&的区别详解
时间:2021-06-18 08:45:28|栏目:C代码|点击: 次
这是c语言的基本语法,但是在学习的过程中也总是搞混。所以记录一下,也和大家分享一下。
&:按照位与操作,例如:0010&1101,结果为0000
&是java中的位逻辑运算:
eg: 2&3=2;
分析如下: 2的二进制为10 ;3的二进制为11 ; 逻辑&之后为10
&&:短路与,表示如果两个条件都成立则执行之后的逻辑;
例如:if(a==0&&b==0),意思就是if a为0并且b为0的时候,进行下一步操作。
|| 短路或。 A||B,只有当A为假的时候才会对B进行判断。若A为真,则不继续对B进行判断。
| 逻辑或。 A|B,会对A, B都进行判断
! 逻辑非,当操作数为true时,返回false,否则返回true。
& 的使用 方法
是把 两个变量 a和b 进行 每个位进行与操作
#include <stdio.h> int main() { // www.lzjuzi.com 励志句子网站为您提供代码 int a = 0x100; int b = 0x001; printf("%02x\n", a & b); return 0; }
输出结果:00
&& 的使用 方法
#include <stdio.h> int main() { // www.lzjuzi.com 励志句子网站为您提供代码 int a = 0x100; int b = 0x001; if(a == 0x100 && b == 0x001) { printf("条件成立\n"); } else { printf("不符合条件\n"); } return 0; }
输出结果:条件成立