int x=0,应该是x++=1 ++x=2啊,为什么x++=0

来源:3-3 自增与自减运算符

Aze阿泽

2015-06-07 21:59

我纠结的是x=0时,x++和++x为什么一个值为0,一个值为2

写回答 关注

1回答

  • Perona
    2015-06-07 22:08:59

    x++是先取值后运算,那么 printf("x=%d\n",x++);这时候先取x的值是0就直接输出x的值,所以它输出的值就是0。取到值以后的运算并不影响到这个输出语句。

    ++x是先运算后取值,上一个输出语句printf("x=%d\n",x++);运算后x=1,那么现在就是在x=1的基础上运算再取值,所以x又自增1了,即1+1,这时候的printf("x=%d\n",++x);就输出了2。

    Perona 回复Answer...

    不客气~~

    2015-06-08 22:18:11

    共 4 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926020 学习 · 20793 问题

查看课程

相似问题