在 C 语言中,一个 “ & ” 符号表示可以表示很多含义,当 “ & ” 放在单个变量的左边,表示获取这个变量的地址
// 定义一个整型变量
int a = 10;
// 表示获取此变量的地址
int *p = &a;
当 “ & ” 符号放在两个变量中间,表示逻辑与,是一种逻辑运算符, 1 & 1 = 1,也可以用于 if
逻辑判断,但是没有短路与好使,而且短路与显得更专业
// 会输出 1
printf("%d\n", 1&1);
上面说到的短路与就是 “&&”,由两个 “&”,专门用于逻辑判断,短路与两边的条件,整个表达式的值才是真的
if(2 > 1 && 3 < 4) {
// 省略实际的业务代码
}
兄弟,&&是逻辑与符号,不是两个取地址符号
&& 逻辑操作符,两边都成立,返回true,否则返回false
a && b你可以理解为满足条件a的同时也要满足b的条件
&& 意思是 &&前面的结果为true,&&后面的结果也为true,就执行{}里面的语句。换句话就是&&存在时,两个语句都必须为真,才执行{}里的语句。