請問如何傳遞實體指標給函數 |
答題得分者是:syntax
|
chang1981
一般會員 發表:31 回覆:28 積分:11 註冊:2008-09-18 發送簡訊給我 |
各位前輩好,小弟最近在寫一些需要傳遞指標的程式,但在傳指標時遇到了問題
因為我希望能將指標實體直接丟給函數,而不是丟指標內容讓函數宣告新指標去指向相同內容 換句話說 主程式的指標 跟函數的指標 希望是同一之指標(同記憶體位置) 如果照一般的寫法: main() { mystruct *mp; myfun(mp); } myfun(mystruct *fp) { } 這樣子fp是另外一個新的指標(跟mp不同記憶體位址) 只是指向的位址跟mp一樣 但fp在myfun處理中如果有被移動 mp並不會跟著動, 因為小弟的資料結構是一個鍊結串列 所以希望fp跟mp能夠保持同步,以方便函數處理完後 主程式利用mp作後續處理 所以想請教如何在函數中宣告一個跟mp實體相同的指標 或是前輩們針對這種狀況有更主流或更好的作法呢? 煩請不吝賜教! 感恩!! |
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
myfun(&mp) myfun(mystruct *fpp) { mystruct *fp fp = *fpp; . . . } ===================引 用 chang1981 文 章=================== 各位前輩好,小弟最近在寫一些需要傳遞指標的程式,但在傳指標時遇到了問題 因為我希望能將指標實體直接丟給函數,而不是丟指標內容讓函數宣告新指標去指向相同內容 換句話說 主程式的指標 跟函數的指標 希望是同一之指標(同記憶體位置) 如果照一般的寫法: main() { mystruct *mp; myfun(mp); } myfun(mystruct *fp) { } 這樣子fp是另外一個新的指標(跟mp不同記憶體位址) 只是指向的位址跟mp一樣 但fp在myfun處理中如果有被移動 mp並不會跟著動, 因為小弟的資料結構是一個鍊結串列 所以希望fp跟mp能夠保持同步,以方便函數處理完後 主程式利用mp作後續處理 所以想請教如何在函數中宣告一個跟mp實體相同的指標 或是前輩們針對這種狀況有更主流或更好的作法呢? 煩請不吝賜教! 感恩!! |
chang1981
一般會員 發表:31 回覆:28 積分:11 註冊:2008-09-18 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |