回 帖 发 新 帖 刷新版面

主题:求助

#include"stdio.h"
void main()
{
      int a=3,b=2,c=2;
     ++a||++b&&--c;
     printf("a=%d  b=%d c=%d\n",a ,b,c);
}


结果为什么是   a=4   b=2  c=2  呢??? 

回复列表 (共2个回复)

沙发

++a||++b&&--c;
a变为4,因为a!=0所以,||操作后面的“++B&&--c”不会被执行。

板凳

如果是做真实项目,那请尽量不要用这样的东西。
如果是学习,请看逻辑表达式的“短路”问题:)

我来回复

您尚未登录,请登录后再回复。点此登录或注册