如何理解c语言编程的运算符自右向左

p++ ,自右向左不是要先算P++然后在计算(p++)吗?

说一下我自己的yy理解啊,如果一定要按从右到左的顺序来理解,p++,就是先遇到++,这时没有操作数,就先什么都不做,然后再遇到P,就把P作为返回值了,然后CPU再自己给P加1;++p呢,先遇到P,再遇到++,这时有操作数了,于是把P加1作为返回值了。啊哈哈哈。

++是一个特殊符号,没有啥左右的

它是先(*P)然后再执行++的

 int a,p=5;
a=p++; //后缀是先用后自加,先把p赋给a,然后p自加。
a=++p; //前缀是先自加后用,先自加,然后赋给a
后缀是自右至左结合变量
前缀是自左至右结合变量
 int a,p=5;
a=p++; //后缀是先用后自加,先把p赋给a,然后p自加。
a=++p; //前缀是先自加后用,先自加,然后赋给a
后缀是自右至左结合变量
前缀是自左至右结合变量

和运算符的优先级也有关系吧,看看运算符、逻辑运算符之间的优先级