短路原则

a=0;b=1

c=a&&(b=3)

最终c=0; b=1

因为从左至右进行时,若遇到运算符左边的操作数是 0(逻辑假),则停止运算。

a=1;b=1;c=0;

d=a||b||(c=b+3);

最终d=1;c=0;

因为从左至右进行时,若遇到运算符左边的操作数是 1(逻辑真),则停止运算。

记住!短路原则是 与(&&) 或(||) 才有。

x=1;y=1;c=0;

c=x++||y++;说明++的优先级高于||高于赋值运算符

printf("%d%d%d ",x,y,c);

x=2;y=1;c=1

原文地址:https://www.cnblogs.com/--lr/p/6231007.html