在像PHP这样的目标C语言中,if-else语句有什么简短的语法吗?
if($value) return 1; else return 0;
简短版本:
return $value?1:0;
vmdwslir1#
是的。这就是Conditional (Ternary) Operator。示例(伪):
Conditional (Ternary) Operator
value = (expression) ? (if true) : (if false);
根据您的示例(有效代码):
int result = value ? 1 : 0;
vyu0f0g12#
在两种语言中,它是 * 完全相同的 *,除了你通常在Objective-C变量名中找不到$符号。
$
if(value) return 1; else return 0;
return value?1:0;
你还应该记住,条件运算符?:不是if-else语句的简写,更像是true vs false表达式的简写。
?:
zzwlnbp83#
惊讶于没有人提出以下建议:
*详细版本:
*小型版本:
return value;
如果value不是一个bool变量,就转换它:return (BOOL)value;
value
bool
return (BOOL)value;
3条答案
按热度按时间vmdwslir1#
是的。
这就是
Conditional (Ternary) Operator
。示例(伪):
根据您的示例(有效代码):
vyu0f0g12#
在两种语言中,它是 * 完全相同的 *,除了你通常在Objective-C变量名中找不到
$
符号。你还应该记住,条件运算符
?:
不是if-else语句的简写,更像是true vs false表达式的简写。zzwlnbp83#
惊讶于没有人提出以下建议:
*详细版本:
*小型版本:
如果
value
不是一个bool
变量,就转换它:return (BOOL)value;