C 教程
/ 简写 If Else
简写 If Else
简写 If...Else(三元运算符)
还有一种简写的 if else,被称为三元运算符,因为它由三个操作数组成。它可以用来将多行代码替换为单行。它经常用于替换简单的 if else 语句:
语法
variable = (condition) ? expressionTrue : expressionFalse;
而不是这样写:
实例
int time = 20; if (time < 18) { printf("Good day."); } else { printf("Good evening."); }运行实例 »
点击 "运行实例" 按钮查看在线实例
你可以简单地写成:
实例
int time = 20; (time < 18) ? printf("Good day.") : printf("Good evening.");运行实例 »
点击 "运行实例" 按钮查看在线实例
使用传统的 if...else 语句还是三元运算符完全取决于你。
注意:虽然上面的示例在语法上是正确的,但使用三元运算符时通常建议将其结果赋值给一个变量,而不是直接执行像 printf 这样的函数。直接执行可能会导致代码的可读性降低。正确的做法可能是将要打印的字符串赋值给一个变量,然后再打印这个变量,或者坚持使用传统的 if-else 结构。
例如:
int time = 20; const char *greeting = (time < 18) ? "Good day." : "Good evening."; printf("%s\n", greeting);