小编dco*_*r11的帖子

Lvalue需要错误

visual studio不报告此程序的任何错误,而turbo c/c ++表示'函数main中需要左值'

int main()
{
  int a=10,b; 
  a>=5?b=100:b=200;
  printf("%d",b);
  return 0;

}
Run Code Online (Sandbox Code Playgroud)

避免错误:a> = 5?b = 100:(b = 200);

为什么会这样?说明.

c ternary-operator lvalue

1
推荐指数
1
解决办法
1393
查看次数

无法理解三元运算符的行为

以下程序的输出是: 3 1 3

int main()
{
    int a = 0, b = 1, c = 3;
    *((a) ? &b : &a) = a ? b : c; // Couldn't understand expression
    printf("%d %d %d \n", a, b, c);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

三元运算符如何在此处输出此输出?

c ternary

-1
推荐指数
1
解决办法
145
查看次数

标签 统计

c ×2

lvalue ×1

ternary ×1

ternary-operator ×1