嘿,非常感谢您的宝贵时间!我无法理解我的音频编码教科书中的语句语法。在一个示例中,有一个打印功能是这样的
printf("%d semitones up or %d semitones down\n", interval,
interval ? 12-interval : 0 );
我不明白的部分是条件运算符,或“?”。似乎我应该将其读为“如果间隔不等于 0,则间隔 = 12 - 间隔”,但这里的语法似乎很奇怪。我习惯了条件运算符是一个更加充实的语句,例如:
a = b > c ? b : c;
“如果 b 大于 c,则 a = b;否则 a = c”
有人可以指出我对此的任何其他参考,或者解释更多关于这种语法的信息吗?我找不到类似的例子。