&&短路与
&与(非短路与)
||短路或
|或(非短路或)
关于它们的用法可以百度,这里介绍它们的区别:
就拿“与”来说,要求所有的条件都判断;而如果使用短路与,第一个条件为false的话,则后面的条件将不会判断
下面看几段代码就全懂了:
#include<iostream>
using namespace std;
int main()
{
if (10 != 10 & 10 / 0 == 0)
cout << "条件满足\n";
return 0;
}
上面的代码会报错,因为10/0,0是不能作为分母的。也就是&运算符即使碰见这个10!=10这个false也不会停止,而是继续判断
再看看&&
#include<iostream>
using namespace std;
int main()
{
if (10 != 10 && 10 / 0 == 0)
cout << "条件满足\n";
return 0;
}
我们发现上面的代码没有报错。当我们判断第一个10!=10的时候就停止了,不会继续判断了。
||和|的使用区别和上面的一样,不作介绍。