两种表示方法常常容易混淆, 在这里将利用演示程序来揭示二者之间的区别, 演示代码以下spa
int main() { int a = 1; cout << "a=1 " << "a++: " << a++ << " 此时a= " << a << endl; a = 1; cout << "a=1 " << "++a: " << ++a << " 此时a= " << a << endl; system("pause"); return 0; }
最终结果以下:code
a=1 a++: 1 此时a=2
a=1 ++a: 2 此时a=2blog
显然, a++ 与 ++a 均是对a自身的自加运算, 就改变a的值来说, 两者效果相同; 可是, 二者算式的值却不相同(a++)的值保持为原先a的值, 而(++a)的值随着a的值一块儿变化加一. 下面, 咱们来看这两个式子的值具体在怎么变化;class
代码以下:变量
int main() { int a = 1; cout << "a=1 " << "a++=" << a++ << "; 此时a=" << a << endl; cout << "此时a=" << a;cout<< "二次a++=" << a++ << "; 此时a=" << a << endl << endl; a = 1; cout << "a=1 " << "++a=" << ++a << "; 此时a=" << a << endl; cout << "此时a=" << a;cout<< "二次++a=" << ++a << "; 此时a=" << a << endl; system("pause"); return 0; }
运行结果以下:引用
a=1 a++=1; 此时a=2
此时a=2二次a++=2; 此时a=3程序
a=1 ++a=2; 此时a=2
此时a=2二次++a=3; 此时a=3方法
结果与咱们想的一致, a++是对a变量值的引用, 始终与该式以前a的值一致; 而++a自己就是对a自增的引用, 结果与该式以后的a保持一致.margin