什么是自增、自减运算符?
对于变量自身的值增加1或者减少1
自增运算符(++)、自减运算符(--)
格式:
变量++;++变量、变量--;--变量
如:
int a=1;
a++;++a;
a--;--a;
它的原理如下:

a++的演示:
示例代码:
#include <stdio.h>
void main()
{
printf("定义两个变量a=10 b=20\n");
int a=10,b=20;
//a++与++a
a++;
printf("a++输出结果:%d\n",a);
}
输出如图:

++a的演示:
#include <stdio.h>
void main()
{
printf("定义两个变量a=10 b=20\n");
int a=10,b=20;
//a++与++a
++a;
printf("++a输出结果:%d\n",a);
}输出如图:

可以看出两者的结果是一样的
同理a--与--a的输出结果一样:
演示代码:
#include <stdio.h>
void main()
{
printf("定义两个变量a=10 b=10\n");
int a=10,b=10;
//a++与++a
--a;
b--;
printf("--a输出结果:%d\n",a);
printf("a--输出的结果:%d\n",b);
}输出如图:

注意
凡事都有例外:
如
int x=1 , y;
y=x++;
这里的y=x++;,先是计算自增还是先赋值,先赋值还是先自增(这里我也入了坑)
它们的运算过程如图:

可以看出(重点):
运算符在后:先赋值,后自增/自减
运算符在前:先自增/自减,后赋值
接下来看示例:
先赋值:
示例代码:
#include <stdio.h>
void main()
{
printf("定义两个变量x=10 y\n");
int x=10,y;
//
y=x++; //先赋值,y=x,后x++
printf("先赋值y=x,y的值为:%d\n 后x++ x的值为:%d\n",y,x);
}输出如图:

先自增:
代码如下:
#include <stdio.h>
void main()
{
printf("定义两个变量x=10 y\n");
int x=10,y;
//
y=++x; //先自增x++,后赋值:y=x
printf("先自增x++ x的值为:%d\n,后赋值y=x y的值为:%d\n",x,y);
}输出如图:

从输出结果可以看出要看++在前还是在后,不同的位置输出结果将大大不同,也就是先赋值,还是先运算,它们之间是有运算顺序的
自减的原理同上,这里就不过多演示了
完
版权声明:本文为qq_59311764原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。