为了账号安全,请及时绑定邮箱和手机立即绑定

在代码运行中,前++和后++的区别。

#include <stdio.h>

int main()

{

    int x = 1,y=10;

    x=x*y;

    x++;

    printf("x=%d\n",x);

    

    return 0;

}

代码中将x++;换成++x;为什么结果是一样呢?请帮忙解答!

正在回答

2 回答

因为这个就是单纯的自增啊,所以x++和++x没什么区别。如果x++参与运算了那就不一样了,例如,a=2,x=3,表达式a*x++的值为2*3=6,表达式算完以后x要自增1,所以x的值就是4了。

而a*++x的值就为2*4=8了,这是因为x先自增了,再参与运算。

总结一点就是,++前置,先自增再参与运算;++后置,先参与运算,自身再自增。

1 回复 有任何疑惑可以回复我~

++在前是先自加1,再取值。++在后是先取当前值再自加1。但是无论++前置还是后置两者最后都会自加1,即都会执行x=x+1,所以该程序最后输出的a都是一样的,如果改为printf("%d\n",x++)和printf("%d\n",++x)则两者结果不一样。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

在代码运行中,前++和后++的区别。

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号