a++和++a有什么区别?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
区别是:对变量“a”的值进行自增的时机不同;“a++”和“++a”都属于自增运算符;“a++”是先进行取值,后进行自增“1”;“++a”是先进行自增“1”,后进行取值。
a++和++a 都属于自增运算符,区别是对变量a的值进行自增的时机不同。a++是先进行取值,后进行自增。++a是先进行自增,后进行取值。
示例
例如:假设 x=3,y=4;
(1) (x++)+(++x)=8
解释:对于第一个(x++),因为x++是先取值后自增,所以(x++)所取得值为3,然后x进行自增,此时x=4;对于第二个(++x),因为++x是先自增后取值,所以(++x)所取得值为5,此时x=5,所以结果为8。
(2) (x++)/3+(–y)*2-(x–)%6+(y++)*3-(y–)
1+6-4+9-4=8
解释:首先(x++)取值为3,然后x=4;然后(–y)取值为3,此时y=3;然后(x–)取值为4,然后x=3;然后(y++)取3,然后后y=4;最后(y–)取4,然后y=3;
注意:()可以提高算数优先级,所以先算括号里面的表达式,但是x++的取值为x,然后x在自增。
重点: ++ 运算优先级 很高
面试题:
int i = 10 i = i++ ;
此时,i的值是多少?
答: 输入 i 的值为 10
解析: 首先 i++ 的取值结果为10, 然后 i 进行自增,此时 i=11 ,最后 进行赋值 ,所以 最后输出 i的值 为 10.
关于a++和++a有什么区别问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/195503.html