请c语言高手进来

来源:百度知道 编辑:UC知道 时间:2024/06/04 06:15:49
#include<iostream>
using namespace std;
int a,x;
for(a=0,x=0;a<=1 && !x++;a++)
{
a++
}
cout<<a<<x<<endl;
}
请问,在第一次循环的过程中,&&右边的!x++的值是多少,个人认为应该是2,因为!和++的优先级相同,自左向右!x=1,然后x++,使得x=2.
请高手指教!!!谢谢!

这种问题,自己就可以搞定,加上括弧,上机测试就明白了

(!x)++ !(x++)

关于优先级

!x++这里++的优先级要比!高,
前++和后++的优先级是不同的,后++的优先级比较高,
!和前++优先级相同

x的值是0.因为是后++它是运算完了再自增.