逻辑与表达式形如 E1 && E2。
E1 && E2
两个操作数都必须具有标量类型。
只有当两个操作数都与 0 比较不相等时,结果才是 1;否则结果为 0。结果类型是 int。
0
1
int
与按位与 & 不同,&& 保证从左到右求值。
&
&&
如果第一个操作数与 0 比较相等,则第二个操作数不会被求值。
若第二个操作数需要求值,则在第一个操作数求值与第二个操作数求值之间存在一个序列点。
IMPORTANT
&& 的核心不是“按位”,而是“逻辑判断 + 短路求值”。