詢問++的執行順序 |
尚未結案
|
warke
一般會員 發表:19 回覆:32 積分:10 註冊:2004-09-04 發送簡訊給我 |
各位大大,下面這段程式阿
class t //1 { //2 static int m (int i) //3 { //4 System.out.print(i ","); //5 return 0; //6 } //7 public static void main (String[] args) //8 { //9 int i = 0; //10 i = i m(i); //11 System.out.print(i); //12 } //13 } //14 輸出結果: % javac t.java % java t 1,0 %輸出結果為什麼是1,0呢? 小弟想要知道他的流程阿,但是無奈都猜不出來。 小弟的認為是這樣的: 第10行的時候: i = 0 第11行的時候: i因為i 的關係所等式變成 i = 0 0;,而經過i ,所以傳入m()的值是1,因此此時輸出已經出現「1,」 第12行的時候: 把 i 印出來,所以輸出結果是 1,0 請問一下小弟是哪邊出錯了呢? |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |