C++中(++a)和(a++)有什么区别?

举个实例,谢谢!!... 举个实例,谢谢!! 展开
 我来答
百度网友f9d49d2
推荐于2017-10-13 · TA获得超过599个赞
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:149万
展开全部
你可以这样来想:++a和a++,都是个表达式,最后的结果就取决于是先加,还是后加,如果是先加,那么最后的表达式的结果就是a的值加1,如果是后加的话,则表达式的值就是原来a的值;而无论是先加,还是后加,a的值计算后一定会加1。
比如:
如果a=1,b=a++,运算完b=1,a=2
如果a=1,b=++a,运算完b=2,a=2

当然也可以这么理解:
a++就是a=a+1,其含义就是现将后面的a赋值给前面的a然后再加1.
++a就是a=1+a,其含义就是先对后面的a加1然后再赋值给前面的1.
但这只是在表达式中.
如果在单独的语句中二者都没有什么区别!
列:int a=1,b=1;
a++;++b;//这里就是语句!
printf("%d%d",a,b);
输出都是2.
而表达式则是if((a++)==1)和if((++a)==1)这里就有区别了!

呵呵,谢谢.
xunjing215
2010-08-05 · TA获得超过111个赞
知道答主
回答量:35
采纳率:0%
帮助的人:31.6万
展开全部
例如N,在执行++a时,先变成N+1,然后再执行程序,执行完一边程序后变成N+2再执行,依次循环。
N在执行a++时,先执行一遍程序,然后变成N+1再执行,依次循环。
也就是说++a表示先增加,然后执行;a++表示先执行后再增加。
这样说也不知道你是否能懂,呵呵。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
远走高飞
2019-09-09 · TA获得超过516个赞
知道答主
回答量:598
采纳率:66%
帮助的人:30.2万
展开全部

an和a的区别,用法区别

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
似靖灵3y
2010-08-05 · TA获得超过3968个赞
知道大有可为答主
回答量:1371
采纳率:0%
帮助的人:1560万
展开全部
(++a)是先加后用
(a++)是先用后加
例如:a=2,b=a++:则b=2,a=3;
a=2,b=++a ,则b=a=3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
七个字是最长的
2010-08-05 · 超过21用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:0
展开全部
+在前就是先让A=A+1,然后使用A的值
+在后就是先使用A的值,然后让A=A+1
简单好记
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式