自增【或者自减】
分类:
前自增-- ++i
后自增 -- i++
前自增和后自增的异同;
相同:
最终都使i的值加1
不同:
前自增整体表达式的值是i加1之后的值
后自增整体表达式的值是i加1之前的值
为什么会出现自增
代码更精炼
自增速度更快
学习自增要明白的几个问题
1.编程时尽量屏蔽前自增和后自增的区别
2.自增表达式最好不要作为一个更大的表达式的一部分来使用
i++和++i单独成一个语句使用,不要把它作为一个完整的复合语句的一部分来使用
比如:
int m = i++ + ++i + i + i++; //这样写不但是不规范,而且是不可移植的
printf("%d %d %d",i++, ++i, i); //同上
自增运算符和自减运算符只能用于变量,而不能用于常亮或表达式
例子:
#include <stdio.h>
int main()
{
int i;
int j;
int k;
int m;
i = j = 3; //等价与 i =3 , j = 3
k = i++; //后自增表达的是i+1之前的值
m = ++j; //前自增表达的是i+1之后的值
printf("i = %d j = %d k = %d m = %d", i, j, k, m);
}
///在vs2019输出结果:i = 4, j = 4, k = 3, m = 4
更简单易懂的可前往https://blog.csdn.net/lianghui0811/article/details/48736109
中查看。这个写的非常详细简单。