C语言指针、运算符问题?

  int c[5]={4,8,3,1,9};
        int *p; p=&c[2]; printf("%d\n",*p++);

为什么运行输出的是**3**?
不应该是3++=**4**吗?

打印 指针 *p 指向 的 当前 值, 打印后,指针 指向 的地址加 1

运算符优先级的 问题

后置++是打印之后才加,前置++才是先加后打印

优先级问题,后置++是语句结束再加

++x:加后取值;x++:加前取值

你已经解了2次地址 肯定不对啊

*p++,先取p,即p指向c[2],再令p自加1,指向c[3]