看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VS C++ 問題(Question): 想修改傳入主程式的節點內容 預期的正確結果(Expected Output): 將原本是dummy node的節點 刪除 把data為1的節點當作是新的起始節點 也就是讓主程式的node.data == 1 錯誤結果(Wrong Output): 無法將函式裡面修改的dummy node 順利的讓主程式也是同樣的結果 程式碼(Code):(請善用置底文網頁, 記得排版) http://codepad.org/td1efQyp 補充說明(Supplement): 有查過置底13誡 問題很像第13點 不過當初在主程式宣告的不是指標 所以有試過retrun沒辦法 阿 至於為什麼要寫兩層函式..... 因為我原本的code 函式first是用來搜尋 將找到的資料再丟到second處理 一般的資料都可以 但只有當找到的資料等於第一筆的時候會失敗 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.39.27.7 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1429622935.A.64E.html
shadow0326: 為什麼不直接讓第一個node.data=1就好? for從i=1開始 04/21 21:34
可是 以後若是要刪掉1 將node.data=2 這樣還是GG
shadow0326: 第一個node和其他node都用動態配置,保持一致比較清楚 04/21 21:44
shadow0326: 這樣你只要用一個Node *head指你想要的位置就好 04/21 21:45
shadow0326: 要刪掉的node記得free掉 04/21 21:46
改宣告成指標一下就成功了! 使用上還滿直觀的xD 而且居然沒出現以前的bug (串列裡的資料最後都會變成最後一個增加的值 謝囉~ ※ 編輯: ohyeah5566 (114.39.27.7), 04/21/2015 22:11:05