发布网友 发布时间:2022-04-06 07:32
共5个回答
懂视网 时间:2022-04-06 11:53
自增自减运算符存在于C/C++/C#/Java/Python
等高级语言中,它的作用是在运算结束前(前置自增自减运算符)或后(后置自增自减运算符)将变量的值加(或减)一。
相较于这些语言中的+=和-=运算符,自增运算符更加简洁,且可以控制效果作用于运算之前还是之后,具有很大的便利性。
自增运算符 ++
使操作数的值加1,其操作数必须为可变左值(可简单地理解为变量)。对于自增就是加1这一点,Eric想大家都不会有什么疑问。
++
可以置于操作数前面,也可以放在后面,如:
++i;
i++ ;
++i
表示,i自增1后再参与其它运算;而i++
则是i参与运算后,i的值再自增1。
自减运算符--
与之类似,只不过是变加为减而已,故不重述。
下面我们通过一些实例来深入理解自增运算符的特性,自减运算符同理自悟
例:
int i=3; int j=4; i++; ++j; printf("%d, %d ", i, j);
对此,Eric想大家都不会有什么困惑,结果就是 4,5;下面我们来做一点小改动:
int i=3; int j=4; int a = i++; int b = ++j; printf("%d, %d ", a, b);
结果又是多少呢?这里就开始体现出++
前置与后置的区别了,结果是3,5。结合此例,我们回头再来理解一下“++
前置:i自增1后再参与其它运算;++
后置:i参与运算后,i的值再自增1”。很明显,a = i++;由于是先执行赋值运算,再自增,所以结果是a=3,i=4;而b = ++j;
则因先自增,然后再赋值,所以b,j均为5。
热心网友 时间:2022-04-06 09:01
从左往右看,比如++m,就是m的值先自加1,再调用,而m++就是先调用m,再自加1.
举个例子
#include <stdio.h>
main()
{
int a=1,b=1;
printf("%d,%d",++a,b++);
//输出就是2,1
}
a的值先自加1,再调用,而b++就是先调用m。
--m
m--
同样的意思,只不过是减法而已
热心网友 时间:2022-04-06 10:19
假如m=3;
t=++m;
当电脑执行完这句时候,t=4,m=4; “++”在前表示先自增再赋值,
假如m=3;
t=m++;
当电脑执行完这句时候,t=3,m=4; “++”在后表示后自增,先赋值。
“--”同理,
希望对你有帮助
热心网友 时间:2022-04-06 11:54
++m 就是在使用前加1
m++ 就是在使用后加1
--m和m-- 道理一样的
热心网友 时间:2022-04-06 13:45
考试才需要搞懂的