指向运算符的优先级

时间:2012-05-14 14:51:57

标签: c structure

pointing to ->运算符wrt对算术,按位和其他指针引用运算符(如&)的优先级是什么。

4 个答案:

答案 0 :(得分:4)

“高”。请参阅operator precedence table。请注意,链接表也包含C ++,因此您需要仔细阅读。

Here's another table,仅限C。您可以看到,共享优先级->的唯一运算符是()(函数调用),[](数组索引)和.(元素选择)。< / p>

答案 1 :(得分:1)

它在'C'中分享高(最高)优先级。优先级 - &gt;高于&amp;。

您可以参考优先级表here(C表)和here(Wiki - 包括C ++)

答案 2 :(得分:1)

作为后缀运算符,->具有最高级别的优先级(以及.成员选择运算符,postfix ++--[]和函数调用())。因此,&foo->bar这样的表达式被解释为&(foo->bar)

如果您有多个具有相同优先级的运算符,则它们从左到右进行求值。例如,[]()也是后缀运算符,因此a[i]->b被解释为(a[i])->bf()->m被解释为(f())->m,{{ 1}}被解释为p++->q等等。

答案 3 :(得分:0)

- &GT;在C中具有最高的优先级。  查看precedence chart以获取更多信息。