--a和a--的疑問
按照a--先賦值再運算的原理,a先賦值是取a=100然后再減1得到的應該是99
而--a則是先自減1后再取值,a也應該是100-1=99在將99賦值給a。
可是答案為什么都是101?
a的值會傳遞嗎?是不是應為上一步中++a的值是102所以--a取值時a的值是102所以a在自減1以后取值為101,而a--是先取值再運算,所以a--取值也為上一步中的101呢?
能不能有哪位給小白詳細說明下
按照a--先賦值再運算的原理,a先賦值是取a=100然后再減1得到的應該是99
而--a則是先自減1后再取值,a也應該是100-1=99在將99賦值給a。
可是答案為什么都是101?
a的值會傳遞嗎?是不是應為上一步中++a的值是102所以--a取值時a的值是102所以a在自減1以后取值為101,而a--是先取值再運算,所以a--取值也為上一步中的101呢?
能不能有哪位給小白詳細說明下
2015-04-23
舉報
2015-04-23
這個就要涉及,先賦值還是先運算了,--a是先運算在賦值,a--是先賦值后運算,運算順序如下
a初始值為100
第一次輸出是a++,結果為100,而現在a的值為101
第二次輸出是++a,結果為102,a的值也為102
第三次輸出是--a,結果為101,a的值也為101
第四次輸出是a--,結果為101,而現在a的值為100
第五次輸出是a+1,結果為101,而現在a的值為100
最后輸出是a,結果當然是100啦