自增与自增运算符
自增即自加一。
自增运算符(++)能对变量进行自增操作,自增包括前置和后置两种形式。
自增后得到的值体现在被操作的变量上,而不是表达式本身。
实现方式
x++
- 赋值:(x++) = x
- 自加一:x = x + 1
++x
- 自加一:x = x + 1
- 赋值:(x++) = x
一例
- y = (x++), x = 0
STEP | y | x | (x++) |
---|---|---|---|
0 (Initial) | (x++) | x = 0 | x |
1 (Run) | 0 | (x + 1) | 0 |
2 (Output) | 0 | 1 | 0 |
- y = (++x), x = 0
STEP | y | x | (++x) |
---|---|---|---|
0 (Initial) | (++x) | (x + 1) | x |
1 (Run) | 1 | 1 | 1 |
2 (Output) | 1 | 1 | 1 |
C 源程序:
#include <stdio.h>
int x, y;
void x__()
{
int x = 0;
printf("1.\n");
printf("x++ = %d\nx = %d\n", (x++), x);
}
void __x()
{
int x = 0;
printf("\n2.\n");
printf("++x = %d\nx = %d\n", (++x), x);
}
int main()
{
x__();
x = 0;
y = (x++);
printf("y = x++ = %d\n", y);
__x();
x = 0;
y = (++x);
printf("y = ++x = %d\n", y);
return 0;
}
输出结果:
1.
x++ = 0
x = 1
y = x++ = 0
2.
++x = 1
x = 1
y = ++x = 1
PS W:\VSCodeScripts\Windows>
可以看到,输出结果与表中的数据是相吻合的。