小朋友学C语言(9):a++与++a
原创
©著作权归作者所有:来自51CTO博客作者海天一树2022的原创作品,请联系作者获取转载授权,否则将追究法律责任
(一)a++
在C语言或其它语言中,++符号表示“自加”,就是变量在原来的基础上加1。
例1:
则此时a的值为1。
同样的道理,–表示”自减”。
例2:
则此时a的值为99。
注意,程序语言里没有”自乘”和”自除”的概念。
验证程序:
#include <stdio.h>
int main()
{
int a = 0; // 给a赋值
a++;
printf("After ++, a = %d\n", a);
a = 100; // 重新给a赋值
a--;
printf("After --, a = %d\n", a);
return 0;
}
运行结果:
After ++, a = 1
After --, a = 99
(二)++a
除了a++表示自加外,++a也表示自加。同理–a表示自减
验证程序:
#include <stdio.h>
int main()
{
int a = 0; // 给a赋值
++a;
printf("After ++, a = %d\n", a);
a = 100; // 重新给a赋值
--a;
printf("After --, a = %d\n", a);
return 0;
}
运行结果:
After ++, a = 1
After --, a = 99
(三)a++与++a的区别
既然a++与++a都是让a自加,那么二者是否完全一样呢?
先看一个程序:
#include <stdio.h>
int main()
{
int a = 0;
printf("a = %d\n", a++);
printf("a = %d\n", a);
printf("a = %d\n", ++a);
printf("a = %d\n", a);
return 0;
}
运行结果:
从运行结果可以看出,a++和++a是有区别的:
a++是先读取a的值,再让a的值增加1;
++a是先让a的值增加1,再读取a的值。
更多内容请关注微信公众号