一.++操作符
++:自增1的操作符,分为前置++和后置++
代码:
代码1:
#include <stdio.h>
int main()
{
int a = 10;
a++;//后置++
printf("a=%d", a);
return 0;
}
代码2:
#include <stdio.h>
int main()
{
int a = 10;
++a;//前置++
printf("a=%d", a);
return 0;
}
运行结果:

1.前置++
代码:
#include <stdio.h>
int main()
{
int a = 10;
int b = ++a;
//先+1,后使用,即①a=a+1;②b=a
printf("a=%d b=%d\n", a,b);
return 0;
}
运行结果:
2.后置++
代码:
#include <stdio.h>
int main()
{
int a = 10;
int b = a++;//先使用,后复制,即①b=a;②a=a+1
printf("a=%d b=%d\n", a, b);
return 0;
}
运行结果:
二.--操作符
--:自减1的操作符,分为前置--和后置--
1.前置--
代码:
#include <stdio.h>
int main()
{
int a = 10;
int b = --a;
//先-1,后使用,即①a=a-1;②b=a
printf("a=%d b=%d\n", a, b);
return 0;
}
运行结果:
2.后置--
代码:
int main()
{
int a = 10;
int b = a--;//先使用,后复制,即①b=a;②a=a-1
printf("a=%d b=%d\n", a, b);
return 0;
}
运行结果:
三.副作用
1.代码:
#include <stdio.h>
int main()
{
int a = 10;
int b = ++a;
//先+1,后使用,即①a=a+1;②b=a
printf("a=%d b=%d\n", a,b);
return 0;
}
此时a=11,b=11均发生了变化
2.复杂代码:
写法1:
int main()
{
int a = 15;
int b;
b = a++ + 25;//①15+25=40;②15+1=16
printf("%d %d\n", a, b);
return 0;
}
写法2:
int main()
{
int a = 15;
int b;
b = a+ 25;//①15+25=40;②15+1=16
a++;
printf("%d %d\n", a, b);
return 0;
}
运行结果:
写法1:
int main()
{
int a = 15;
int b;
b = ++a + 25;//a=15+1=16;b=16+25=41
printf("%d %d\n", a, b);
return 0;
}
写法2:
int main()
{
int a = 15;
int b;
++a;
b = a + 25;
printf("%d %d\n", a, b);
return 0;
}
运行结果: