为什么a&&b的结果会是这样?
#define printt(a,b,c) printf("a=%d\tb\%d\tc=%\n",a,b,c);
main()
{
int a,b,c;
a=b=c=2;
++a||++b&&++c; printt(a,b,c);
}
结果为什么是
a=3 b=2 c=2 呢?这个&&是怎么运算的? PRINTT是……?
#define printt(a,b,c) printf("a=%d\tb\%d\tc=%\n",a,b,c);
main()
{
int a,b,c;
a=b=c=2;
++a||++b&&++c; printt(a,b,c);
}
结果为什么是
a=3 b=2 c=2 呢?这个&&是怎么运算的? PRINTT是……?
输出为a=3 b=2 c=
这个条语句#define printt(a,b,c) printf("a=%d\tb\%d\tc=%\n",a,b,c);这里少加d,今人产生误会.