为什么x>0?y=x:y=-x;在c++中能运行而c中会报错?
C和C++对三目运算符的解释有区别
我看你的目的应该是给y赋值X的绝对值,那么你的写法应该是
y = x>0?x:-x;
或者
if (x>0) { y=x; } else { y=-x; }
C++中能运行而c中会报错应该就是因为C++对C语音做了扩展对语法约束要求没那么高。