我误解了朋友的陈述后才有一个疑问。
我的朋友告诉我:我刚刚教同事如何在c中一行执行if / else。
例:
int i = 0;
i < 0 ? printf("i is below 0") : printf("i is over or equal to 0");
Run Code Online (Sandbox Code Playgroud)
现在,没有什么新鲜的东西,它被称为三元数,大多数人都知道这种陈述,但是我首先了解到:
我刚刚教了一位同事如何在同一行中执行IF / ELSE IF / ELSE。因为我不知道这样做是不可能的,所以我尝试做类似的事情
int i = 0;
i < 0 ? printf("i is below 0") : i == 0 ? printf("i equal 0") : printf("i is over 0");
Run Code Online (Sandbox Code Playgroud)
实际上是否可以执行if / else if / else“三元”。还是有一种方法可以在没有可怕的代码的情况下进行此类操作?
小智 6
This is definitely valid.
Or you could try something like this -
printf(i < 0 ? "i is below 0" : i == 0 ? "i equal 0" : "i is over 0");
Run Code Online (Sandbox Code Playgroud)