c语言三目运算符的问题
int a,b;
scanf("%d%d",&a,&b);
a>b? a+=b:a-=b;
请问大家为什么我这个编译不过去呢?
[解决办法]
a > b ? (a+=b) : (a-=b)
[解决办法]
- C/C++ code
a>b ? (a+=b) : (a-=b);
[解决办法]
- C/C++ code
a = a>b ? (a+b) : (a-b);
[解决办法]
三目运算符的优先级高于赋值运算符
所以 a+=b 和 a-=b 周围要加括号。