指针自减的优先级是什么样的?

img


#include <stdio.h>
int main()
{
    int a[10],b,*pa,*pb=&b;
    for(pa=a;pa<a+9;pa++)
        scanf("%d",pa);
    scanf("%d",pb);
    int i=10;
    while(*pb>*pa)
       a[i--]=*pa--;
    a[i]=*pb;
    for(pa=a;pa<a+10;pa++)
       printf("%d ",*pa);
}
为什么答案是这样的啊,懵逼脸•᷄ࡇ•᷅

i--是先用了再减
即a[i--]=*pa--;等价于a[i]=*pa,i--,*pa--
--i是先减了再用
即a[-i]=--*pa;等价于i--,*pa--,a[i]=*pa
如果对你有帮助,望采纳

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632