这是代码:
void main()
{
clrscr();
int a=-3 , b=2 , c=0, d;
d = ++a && ++b || ++c;
printf("a=%d , b=%d , c=%d, d=%d ",a,b,c,d);
getch();
}
Run Code Online (Sandbox Code Playgroud)
输出: -2 , 3 , 0 , 1
我无法理解为什么价值c不会增加,我认为它应该是1如何产生的d = 1.