如何解释运算符关联性?

问题描述 投票:1回答:1

括号和指针符号具有相同的优先级,它们从左到右处理。为什么以下代码试图从nfct获取成员skb,然后进行类型转换?结果似乎从右到左。

(struct nf_conn *) skb->nfct 
c operators operator-precedence associativity
1个回答
3
投票

我相信你在这里缺少的是Operator Precedence

指针成员访问运算符(->)的优先级高于强制转换。

详细说明,(借用的措辞)

  • 运算符优先级确定在具有多个具有不同优先级的运算符的表达式中首先执行哪个运算符。
  • 当两个具有相同优先级的运算符出现在表达式中时,使用(或发挥作用)关联性。
© www.soinside.com 2019 - 2024. All rights reserved.