【发布时间】:2014-09-11 04:07:51
【问题描述】:
在我用来学习 C 的 Big Nerd Ranch C 书中,它说“每当您遇到根据条件将值分配给变量的场景时,您就有一个候选 '条件/三元运算符',即?。”
所以我的问题是,有人可以向我解释以下代码 sn-p:
int i = 20;
int j = 25;
int k = (i > j) ? 10 : 5;
if (5 < j - k) {
//First expression
printf("the first expression is true.");
} else if ( j > i ) {
//Second Expression
printf("The second expression is true.");
} else {
printf("Neither expression is true.");
}
【问题讨论】:
-
k等于 5,因为else if行没有任何条件,所以不会编译。
标签: c if-statement ternary-operator conditional-operator