++i(前增量) 和 i++(后增量)的区别

不同:
前增量:先将变量增一,使其实体发生变化,然后将变量对应的实体作为表达式结果,即先做+1运算。

后增量:先将变量的值(仅仅是值,不是实体)作为表达式的值确定下来,再将变量增一,实体值发生变化,即先做赋值运算;
前增量和后增量的区别:作为表达式的结果,前增量返回的是左值,后增量返回的不是左值
如:

#include <studio.h>
int main() {
int m,n;

m = 0;
n= 1;
m = n++;    //先让m变成n的值1,再让n加1
printf("%d",m );     //输出的m为1
printf("%d", n);     //输出的n为2

m = 0;
n = 1;
m = ++n;    //先让n加1, 再让m变成n的值2
printf("%d", m);    //输出的m为2
printf("%d", n);    //输出的n为2

return 0;
}

相同:
若只需自身变量加1,则没有不同

#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	int n=0;    
	int m=0;
	
	n++;   //n=n+1;
	++m;   //m=m+1;
	
	printf("n=%d,m=%d\n",n,m);
	
	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值