i++和++i的区别[看完就懂]!!!

1,区别

  • 1,i++会先copy一下原来的值作为副本,再在原来的值(真值)上加+1。

  • 2,++i直接在原来的值(真值)上加1。

  • 3,当输出的时候,如果有副本的,会先输出副本,没有副本的才会输出副本。

2,源代码

int i=0, j=0;
int a,b;
a = i++;
b = ++j;
printf("a=%d\n", a);  // a=0;
printf("b=%d", b);    // b=1;

3,解释

- a=i++这里先copy一个副本0然后在真值上加1,有副本会先输出副本。
- b=++j这里是直接在真值上加1,然后因为没有副本所以直接输出真值1。

4,结尾

你的点赞是对我最大的支持!!!

THE END