C语言中 a++
a--
和 ++a
--a
的区别
a++
表示先赋值再进行加运算
a--
表示先赋值再进行减运算
++a
表示先进行加运算再赋值
--a
表示先进行减运算再赋值
注:从上面的概念理解很抽象
实例
1. 理解 a++
代码
# include <stdio.h>
int main(){
int a = 10;
int c ;
// 第一次直接给 c 赋值 c = a = 10,第二次再计算赋值给 a ,即 a = a + 1 = 10 + 1 = 11
c = a++;
printf("先赋值再运算 \n");
printf("此时 c 的值为:%d", c);
printf("此时 a 的值为:%d", a);
return 0;
}
计算结果如下:
先赋值再运算
此时 c 的值为:10
此时 a 的值为:11
2. 理解 a--
代码
# include <stdio.h>
int main(){
int a = 10;
int c ;
// 第一次直接给 c 赋值 c = a = 10,第二次再计算赋值给 a ,即 a = a - 1 = 10 - 1 = 9
c = a--;
printf("先赋值再运算 \n");
printf("此时 c 的值为:%d", c);
printf("此时 a 的值为:%d", a);
return 0;
}
计算结果如下:
先赋值再运算
此时 c 的值为:10
此时 a 的值为:9
3. 理解 ++a
代码
# include <stdio.h>
int main(){
int a = 10;
int c ;
// 第一次先计算赋值给 a ,即 a = a + 1 = 10 + 1 = 11,第二次再把 a 的值赋给 c = 11
c = ++a;
printf("先运算再赋值 \n");
printf("此时 c 的值为:%d", c);
printf("此时 a 的值为:%d", a);
return 0;
}
计算结果如下:
先运算再赋值
此时 c 的值为:11
此时 a 的值为:11
4. 理解 --a
代码
# include <stdio.h>
int main(){
int a = 10;
int c ;
// 第一次先计算赋值给 a ,即 a = a - 1 = 10 - 1 = 9,第二次再把 a 的值赋给 c = 9
c = --a;
printf("先运算再赋值 \n");
printf("此时 c 的值为:%d", c);
printf("此时 a 的值为:%d", a);
return 0;
}
计算结果如下:
先运算再赋值
此时 c 的值为:9
此时 a 的值为:9
以上是个人的总结理解,还请各位大佬多指点,谢谢~
网友评论