一、自加自减运算的符号:++,--
自加自减运算主要分为前缀、后缀。
因此,运算的结果也不一样。
以++为例子,若定义了两个整型变量x,y,经过以下运算输出x,y的值。
- x++;
- ++x;
- y=x++;
- y=++x;
自加自减运算最后的结果主要体现在表达式的变化,对于变量本身都是要变化的,即加1。
实验操作如下:
1)
#include<stdio.h>
int main(void)
{
int x=0,y;
x++;
printf("%d",x);//输出的是变量的值
return 0;
}
#include<stdio.h>
int main(void)
{
int x=0,y;
printf("%d",x++);//输出的表达式的值
return 0;
}
2)
#include<stdio.h>
int main(void)
{
int x=0,y;
++x;
printf("%d",x);//输出的变量的值
return 0;
}
#include<stdio.h>
int main(void)
{
int x=0,y;
printf("x=%d,++x=%d\n",x,++x);//前者输出变量的值,后者输出表达式子的值
return 0;
}
3)
要注意的是,y=x++等价于:
y=x;
x=x+1;
对于y来说,就是把表达式的结果赋给y。
#include<stdio.h>
int main(void)
{
int x=0,y;
y=x++;
printf("x=%d,y=%d\n",x,y);//输出变量的值
return 0;
}
区分输出表达式的情况
#include<stdio.h>
int main(void)
{
int x=0,y;
printf("x=%d,x++=%d\n",x,x++);//注意!区分这里输出的前者是变量,后者是表达式
return 0;
}
那么,y=++x就等价于:
x=x+1;
y=x;
对于y来说就是把++x表达式子的结果赋给y。
这里不再对此进行说明。
自减算法也是一样的道理。
总结:
前缀的自加自减运算表达式变化规律是——先变量的值=变量的原始值+1;表达式的值=变量的值。
后缀的自加自减运算变化规律是——表达式的值=变量的原始值;变量的值=变量的原始值+1。
要注意,输出的要求或者进行运算的要求是表达式的值还是变量的值。