看板 Examination 關於我們 聯絡資訊
: void f(int *p,int a[]) { p=a;} //*(p)=1 : void main() : { : int a[]={1,3,5,7}; : int *p=&a[1]; : f(p,a); 進去之後無痛出來,因為CALL BY VALUE(如綠色箭頭) : //*(p)=3 : p++; +1故指標往後指(如紅色箭頭) : cout<<*(p); : //*(p)=5 : } : 想法: p不是指標嗎? : 為什麼離開 f function 後 : p值仍未改? call by value? 圖解一下: P a[0] a[1] a[2] a[3] -------------------------------------- 儲存的內容     1 3 5 7 │ ↑         └────────┘───┘ 有錯請指證@@" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.35.82.122
hrlife:感謝回答 06/13 01:05