c++中(*a)++与*a++有什么区别

如题,请懂的朋友指点最好举例说明一下,谢谢了。... 如题,请懂的朋友指点
最好举例说明一下,谢谢了。
展开
 我来答
成璠瑜5Q
2011-05-28 · TA获得超过415个赞
知道小有建树答主
回答量:325
采纳率:0%
帮助的人:381万
展开全部
(*a)++ 只是让a所指向的对象的值++, *a++是先解引用a所指的对象(变量)然后使指针a++

借用某人的例子 char* a=“13579”;
*a++的值是'1'而不是他所说的'2',LZ可以自己尝试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱浪菜K
2011-05-28 · TA获得超过558个赞
知道答主
回答量:56
采纳率:0%
帮助的人:0
展开全部
++的优先级高于*,所以*a++会先执行++,也就是指针后移一个位置,然后在取其内容,例如
char* a=“13579”;
*a++的值是'2'

而(*a)++是取指针a的内容,然后将其加1
同样的,char* a=“13579”;
*a的值是'1',那么(*a)++ = '1' + 1 = '2'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
catm3
2011-05-28 · TA获得超过511个赞
知道小有建树答主
回答量:234
采纳率:100%
帮助的人:357万
展开全部
(*a)++ 等介于 *a=(*a)+1

b=*a++ 等介于b=*a; a=a+1

够明白了吧
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式