前置递增,首先将运算对象加1,然后将改变后的对象作为求值结果;
后置递增,将运算对象加1,但是求值结果是运算对象改变之前那个值的副本;
上面是书上的知识,现在讲讲自己的理解,若出现错误,还请指出,谢谢;
前置递增相当于先加1,然后把加1后的结果在赋值给自己,
i = 0;
++i,相当于i = i + 1;
而后置递增是先赋值,再加1
i = i;
i = i +1;
前缀与后缀++,个人了解就一个为全局变化,一个为临时变量,结合代码
//cout<<++i<<" “<<i++<<” “<<i++<<” “<<++i<<” "<<i++<<endl;执行的顺序是从右往左的
#include<iostream>
using namespace std;
int i = 0;
//前缀i++
void prefixi()
{
i = i+1;
cout<<i<<" ";
}
//后缀++i
void suffixi()
{
int t = i;
cout<<t<<" ";
i = i+1;
}
int main()
{
//cout<<++i<<" "<<i++<<" "<<i++<<" "<<++i<<" "<<i++<<endl;
suffixi();
prefixi();
suffixi();
suffixi();
prefixi();
return 0;
}