1. 单独存在,二者没区别
int i = 0;
while (i < 10)
{
cout << i ;
++i;
}
int j = 0;
while (j < 10)
{
cout << j ;
j++;
}
二者都输出:0,1,2,3,4,5,6,7,8,9;
2. 赋值操作,二者有区别
int i = 0, j = 0;
int a, b;
a = i++;
b = ++j;
cout << a << endl;
cout << b << endl;
输出:a = 0;b = 1。
3. 原因
- i++:先用i的值来参加表达式的计算,然后再自加1;
- ++i:先自加1,再用自加后的值来做运算。