c语言中++,--(++i,i--)的区别

测试程序dev编译器中进行, 如有错误,请联系我,我会及时做出修改,

在c语言中,++、–的运算,单独成为一条语句时,为隐式的自加1,自减1,

例:

单独出现以下某语句时

	++i;		//表现为i=i+1; 	
	--i;			//表示为i=i-1;	
	i++; 		//表示为i=i+1; 
	i--; 			//表现为i=i-1;

1.后自加或自减运算
int i=1,j=1; //进行后自加或自减运算
printf(“初始值:i=%d\n”,i);
i++;
printf(“i++ 运算后的值为:i=%d\n”,i);
printf(“初始值:j=%d\n”,j);
j–;
printf(“j-- 运算后的值为:j=%d\n”,j);
结果为
初始值:i=1
i++ 运算后的值为:i=2

	初始值:j=1
	j-- 运算后的值为:j=0

2. 前自加或自减运算
int a=1,b=1; //进行前自加或自减运算
printf(“初始值:a=%d\n”,a);
++a;
printf("++a 运算后的值为:a=%d\n",a);
printf(“初始值:b=%d\n”,b);
–b;
printf("–b 运算后的值为:b=%d\n",b);

 初始值:a=1
 ++a; 运算后的值为:a=2
 初始值:b=1
 --b; 运算后的值为:b=0

和其他运算符连用

"++i 或者 --i"     在和其他运算符连用时,先进行自加或自减运算,再进行其他运算

"i-- 或者 i++"     在和其他运算符连用时,先拿原值进行其他运算,紧接着该变量发生自加或自减,再拿改变值后的该变量所对应的值,
		     	   (先是该变量等于原值,下一次用该变量后,该变量的值已是自加或自减运算后的值)

前自加或自减运算和其他运算符连用时

代码:

int i=1;	 
printf("i的值为 i=%d\n",i);
i+=++i;		//++ 和 + 的优先级:++ > + , 即单目运算符大于算术运算符,可以看成 i=i+ ++i; i先自加结果为2 i=2+2
printf("运算后i的值为 i=%d",i);

***结果为:***
i的值为 i=1
运算后i的值为 i=4

后自加或自减运算和其他运算符连用时

代码:

int i=1,j;	 
printf("i的值为 i=%d\n",i);
j+=i--;		//-- 和 + 的优先级:-- > + , 即单目运算符大于算术运算符,可以看成 i=i+ i--; i先拿原值进行其他运算,最后再自减或自加运算 
			//先是该变量等于原值,下一次用该变量后,该变量的值已是自加或自减运算后的值)
printf("j=%d\n",j);			
printf("运算后i的值为 i=%d",i);

***结果为***:
i的值为 i=1
j=2
运算后i的值为 i=0
  • 14
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值