表达式print(“17%d,(a=2)&&(b=-2));”的输出结果
代码编译错误,哪来的输出
如果题目愿意是定义两个int型变量a和b后,然后求它们上面表达式的值,则其结果是:171.
因为(a=2)其结果是2,(b=-2)的结果是-2,然后2&&-2,其结果是1,因为不等于0的数其对应的真假值为1,所以最后结果是:171.
测试但代码如下:
#include <stdio.h>
int main(void){
int a,b;
printf("17%d",(a=2)&&(b=-2));
return 0;
}