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

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

第1个回答  2015-01-17
*p++=1;p++;*p=2
1++=2
2*(*++p)=2*3=6追问

我算出来也是6,但是标准答案是3。

1++=2,你想表达的意思是a[0]++=2吧?毕竟常数不能自加

追答

也许标准答案错了,你可以用一个编程软件试试看,就不用纠结了

追问

编译器是3。😭😭😭

→_→我貌似自己明白了

追答

那就看下书本的优先级顺序,我也有点忘记了,不好意思

追问

优先级和结合性我一直很纠结,还是谢谢啦。

p4是个char型三级指针,请问++*––(++p4)[1]啥意思

本回答被提问者采纳
相似回答