定义 int a[]={1,2,3,4,5,6},*p=a; 求表达式(*p++)++**++p的

大哥大姐帮我讲解下,定义 int a[]={1,2,3,4,5,6},*p=a; 求表达式(*p++)++**++p的?

定义 int a[]={1,2,3,4,5,6},*p=a;
求表达式(*p++)++**++p的值。
求详解,讲清每一步的变化,要涉及到符号的优先级和结合性。
最新回答
相逢即是缘分

2024-11-24 07:58:32

*p++=1;p++;*p=2
1++=2
2*(*++p)=2*3=6
追问
我算出来也是6,但是标准答案是3。
1++=2,你想表达的意思是a[0]++=2吧?毕竟常数不能自加
追答
也许标准答案错了,你可以用一个编程软件试试看,就不用纠结了
追问
编译器是3。😭😭😭
→_→我貌似自己明白了
追答
那就看下书本的优先级顺序,我也有点忘记了,不好意思
追问
优先级和结合性我一直很纠结,还是谢谢啦。
p4是个char型三级指针,请问++*––(++p4)[1]啥意思