有人可以给我a[++b] 和 ++a[b] 的优先级抽象语法树,以便我可以更好地理解我在对运算符进行评估时遇到困难..我得到表达式评估什么都没有与操作员的评估顺序有关..!! 在这种情况下,在 array[expr1] expr1( sub script expression) 中的任何运算符 expr1 应该首先被评估?我只是说在 a[++b]...[] 中的优先级高于 ++(前缀),所以我查看表达式 a[++b] 并认为b 涉及两个运算符,其中较高的省 [] 应该首先被评估。但有人告诉我哪里错了?**
int main(){
int a[4]={1,2,3,4};, b=1;
printf("%d ",a[b++]);
b=1;
printf("%d",++a[b]);
}
**