&&优先级大于||
举个例子:
#include<iostream>
using namespace std;
int main()
{
if(true||true&&false)
{
cout<<1;
}
else
cout<<0;
}
如果||和&&同优先级,true||true返回值为true,返回的true与后面的false取&&返回值应为false,if 条件不满足则应该输出0。
但实际却是输出了1,是由于&&优先级大于||,取得true&&false的返回值false,在取返回的false||true,条件满足,输出1。