Bootstrap

前置++与后置++的区别

前置++与后置++都是对变量值进行+1 类似于a = a + 1 但他们的区别就在于前置后置关系

我们先来看后置++ 

后置++就是先使用变量 再对变量进行+1

我们来给出一个代码举例↓

#include<stdio.h>
int main()
{
	int a = 10;
	int b = a++;//后置++是先使用再++
	printf("%d %d", a, b);
	return 0;
}

可以先思考一下

下面是运行结果

d9675aee39da4239a0e91a272c784343.jpg

 

就是可以理解为a是先使用 将a本身的值10赋给b 然后a再进行+1变成11

下面是函数传参的情况

#include<stdio.h>
void test(int b)
{
	printf("%d \n", b);
}
int main()
{
	int a = 10;
	test(a++);
	printf("%d \n", a);
	return 0;
}

同样可以先思考结果

下面是运行结果↓

23679ba6644044aaac11e2dcdc259ab1.png

在进行test函数传参的时候实参是a是先使用再++的 形参b还是a本来的值10

下面是后置++

后置++是先对变形进行+1再使用

#include<stdio.h>
int main()
{
	int a = 10;
	int b = ++a;
	printf("%d %d\n", a, b);
	return 0;
}

结果是什么呢?

没错就是你想的那样 两个11

5113b531cb124ce6b75c14f8c9119e31.png

看一下传参的效果

#include<stdio.h>
void test(int b)
{
	printf("%d \n", b);
}
int main()
{
	int a = 10;
	test(++a);
	printf("%d \n", a);
	return 0;
}

结果显而易见的

a4b56918d05e43c1a6bb5bb204069514.png

对与前置--与后置-- 逻辑是与++一样的 可以自己亲手实践一下

对于指针中的前置++与后置++还会更新 目前知识储备不够

敬请期待一下

 

 

;