遞歸中賦值的問題
有點不清楚的想問問,代碼里面的參數是怎么賦值然后代碼是怎么運算的。輸入move(4, 'A', 'B', 'C'),是不是表示分別將'A', 'B', 'C'賦值給a,b,c,那么函數在運行過程中,賦值是怎么進行的,是不是move(n-1, b, a, c)時,a,b,c的值是'A', 'B', 'C',還是已經變化為b='A',a='B',c='C'?
有點不清楚的想問問,代碼里面的參數是怎么賦值然后代碼是怎么運算的。輸入move(4, 'A', 'B', 'C'),是不是表示分別將'A', 'B', 'C'賦值給a,b,c,那么函數在運行過程中,賦值是怎么進行的,是不是move(n-1, b, a, c)時,a,b,c的值是'A', 'B', 'C',還是已經變化為b='A',a='B',c='C'?
2017-07-01
舉報
2017-07-01
這里講的就是參數傳遞的問題,定義函數的時候里面如無默認值,都是形參如move(4,'A','B','C')(這里n默認4),調用函數時,調用的函數括號里面為實參move(n-1,'a','b','c');對應關系為一一對應{n-1:4 A:a B:b C:c},最后肯定是在變化了。