C语言指针计算问题,为什么i值为14不是13呢?

img
为什么i值为14 不是13呢?
我的运算过程是 i初值为0,指针p指向i 并执行(p)++ i变为1 执行 ++(q);后j值为11 最后执行 i=*p+(++ *q)即i=1+12后 i值得13
不知道哪一步出错了

最后一行++*p不是让它从13加到14了吗


int main()
 {
     int i=0,j=10,*p,*q;
    p=&i;q=&j;
     printf("%d %d\n",*p,*q);
     (*p)++;++(*q);
     printf("%d %d\n",*p,*q);
     i=*p+(++*q);
     printf("%d %d\n",*p,*q);
     j=++*p+*q;
     printf("%d %d\n",*p,*q);
     printf("%d %d\n",i,j);
}

0 10
1 11
13 12
14 26
14 26

14和26是你电脑实际运算结果吗?
14和26是自相矛盾的吧,如果i是14,那么j就不会是26
i是13时,j才是26