第1个回答 2018-01-08
结果是
a=1,b=0,c=1
&&的优先级比||高,先做a++&&b++
a++返回a当前的值0, a++为假,那么a++&&b++就必然为假,于是b++就没必要执行,被忽略,然后求0||c++, 于是c++被执行
综上就是a++和c++被执行, b++被忽略
最终a=1,b=0,c=1
第2个回答 2018-01-08
a = 1, b = 0, c = 1
语句中a,b,c都是后自加, 所以是先进行表达式的运算, 再进行后自加, a++ && b++这部分时, a=0, 所以会发生短路, 不会执行b++,整个a++&&b++都为假 然后会执行判断c++的值,
过程中只会对a和c进行后自加运算, 所以a和c为1, b=0