这个问题在这里已有答案:
这段代码是什么意思?
int c, sign;
sign = (c == '-') ? -1 : 1;
我只知道整数为数字。问号等是什么意思?
这是三元运算符。
sign = (c == '-') ? -1 : 1;
并且上面的代码相当于
if(c == '-') sign =-1;
else sign=1;
要解释有关三元运算符的更多信息:
语法是:
(condition)? do this if condition is true:do this if condition is false
您可以使用它的另一个例子:
int a=1;
printf( "Value of test is %d\n", (a == 1) ? 20: 30 );
如果== 1为真,则打印20;如果== 1为假,则打印30