[理工] [資結] 參數傳遞
有點不太能理解 pass by value result and pass by name
可否像各位請教一下 以下題目 小弟解決的是否有誤
//Gloval var
int i,a[2];
void p(int x,int y){x++;i++;y++}
int main()
{
a[0]=3;a[1]=5;i=0;
p(a[i],a[i]);
printf("%d\n",a[0]);
printf("%d\n",a[1]);
system("pause");
return 0;
}
如果是使用 Pass by value result 會印出 4 , 5
如果是使用 Pass by name 會印出 4 , 6
請問這樣有錯嗎 還有是否有詳細一點的解釋 (很少使用這兩種參數傳遞
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.105.105
※ 編輯: learnerQQ 來自: 140.123.105.105 (01/11 17:24)
→
01/11 21:01, , 1F
01/11 21:01, 1F
→
01/11 21:03, , 2F
01/11 21:03, 2F
推
01/11 21:06, , 3F
01/11 21:06, 3F
→
01/11 21:07, , 4F
01/11 21:07, 4F