- ↑
sizeof
的运算数不能是类型转型:表达式sizeof (int) * p
无歧义地转译成(sizeof(int)) * p
,而非sizeof((int)*p)
。 - ↑ 虚构优先级,见下面注意
- ↑ 条件运算符中部(
?
与:
之间)的表达式分析为如同加括号:忽略其相对于?:
的优先级。
分析表达式时,列于上面表中某行的运算符,将比列于低于它的行中拥有较低优先级的任何运算符,更紧密地绑定到其参数(如同用括号)。例如,表达式 *p++ 被分析为 *(p++) ,而非 (*p)++ 。
拥有相同优先级的运算符以其结合性的方向绑定到其参数。例如表达式 a = b = c 被分析为 a = (b = c) 而非 (a = b) = c,因为从右到左结合性。
原文地址: Link