您好,登錄后才能下訂單哦!
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有什么區別問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。