-2
#include<stdio.h>
int main()
{
int n = 0, y = 1;
y == 1 ? n=0 : n=1;
if(n)
printf("Yes\n");
else
printf("No\n");
return 0;
}
#include<stdio.h>
int main()
{
int n = 0, y = 1;
y == 1 ? n=0 : n=1;
if(n)
printf("Yes\n");
else
printf("No\n");
return 0;
}
?:操作符不像那样工作。你想要做的是一样的东西:
n = ((y == 1) ? 0 : 1);
在更一般的情况下,如果要执行基于一个条件操作,使用if
。 ?:运算符更适合基于条件返回值。
'n = y == 1? 0:1;'? –
n =(y == 1)? 0:1;为了可读性。 –
'n = y!= 1'? ;-) – alk