> 其他 >
int x=5,y=3;则x*=y-1后x的值是多少?他们都说先算y-1.
可是我就是不明白,y-1并没有被小括号包围啊 像(y-1),按照运算顺序,怎么会是先算他呢?不是先算乘法吗?
人气:153 ℃ 时间:2020-06-05 08:34:34
解答
这个不是这样的,这个要从运算符的优先级角度去理解,你可以查一下运算符优先级表,加减运算符要比复合运算符优先级高很多,所以出现你上面列的这种情况,程序会先算y-1而不是按照你想的那样运算.“*=”已经属于复合运算符的范畴了?不是单纯的乘除运算符,所以,加减的运算符优先于它。是这个意思吗?是的,可以这样理解,“*=”就是一个复合运算符
推荐
猜你喜欢
© 2026 79432.Com All Rights Reserved.
电脑版|手机版