**c语言中++,--(++i,i--)的区别**
程序员文章站
2022-07-14 07:57:17
...
*
测试程序dev编译器中进行, 如有错误,请联系我,我会及时做出修改,
-
在c语言中,++、--的运算,单独成为一条语句时,为隐式的自加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
下一篇: C语言中的++i和i++