展开全部
根据你的结果可以知道你的a[2]=30; 以下是解析:
*p++ 由结合性的优先级 相当于*(p++); p++表示将p的地址向下移,这时p=&a[2]也就是p指向了a[2]的地址,*p表示取出a[2]的值为30.
*++p 相当于*(++p),++p也表示将p的地址向下移,这时p=&a[2]也就是p指向了a[2]的地址,*p表示取出a[2]的值为30.
而++*p 相当于++(*p) ,这就表示先将p指向的地址的值拿出来也就是a[1]的值为20,再++,就相当于
20+1=21
*p++ 由结合性的优先级 相当于*(p++); p++表示将p的地址向下移,这时p=&a[2]也就是p指向了a[2]的地址,*p表示取出a[2]的值为30.
*++p 相当于*(++p),++p也表示将p的地址向下移,这时p=&a[2]也就是p指向了a[2]的地址,*p表示取出a[2]的值为30.
而++*p 相当于++(*p) ,这就表示先将p指向的地址的值拿出来也就是a[1]的值为20,再++,就相当于
20+1=21
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-02
展开全部
*p++,*是指针指向往后+1的地址取值,指针先进行p++或++p再取值,明显数组只有1个数值a[1]=20,再往后就没有了,运行出来是一个随机数,而,++*p是指针p指向数组a[1]=20的值再自增1。注意*p++,*++p,++*p之间的区别
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询