[爆卦]堆疊 堆積是什麼?優點缺點精華區懶人包

為什麼這篇堆疊 堆積鄉民發文收入到精華區:因為在堆疊 堆積這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者mario86123 (mario86123)看板C_and_CPP標題[問題] 堆疊已損毀時間...


開發平台(Platform): (Ex: Win10, Linux, ...)
win10

編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
vs 2015

問題(Question):

這個程式是要把餵入的資料轉成二元樹存起來

我程式寫到一個段落偵錯的時候
發現第28行
第一次malloc是成功的
但第二次malloc就失敗了
它顯示堆積已損毀
想請問一下程式是哪裡出錯了呢?

餵入的資料(Input):
(-,(/,(*,16,(+,24,13)),9),10)

程式碼(Code):(請善用置底文網頁, 記得排版)
http://codepad.org/e35UfNCP

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.166.236.64
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1494639040.A.D21.html
sunneo: line 33: root->data[1] = '/0'; 05/13 11:27
sunneo: heap壞掉,就要檢查對malloc的指標寫入的操作 05/13 11:28
sunneo: data有[3],operatorr有[5],operatorr沒有初始化 05/13 11:30
sunneo: 所以你的strcpy應該有蠻大機會複製超過3個byte 05/13 11:32
hunandy14: 26行沒有歸零 32行有機會複製到 垃圾 05/13 12:12
hunandy14: 不過主因是31不正確的操作(沒補結束符) 05/13 12:13
hunandy14: 然後就是樓上說的複製超過 05/13 12:13
hunandy14: 71行 嘗試把一個 長度超過3的複製進去 05/13 12:14
hunandy14: 33行操作是錯誤的 直接 = 0 就好 05/13 12:18
tinlans: 標題堆疊,內文堆積 05/14 05:01
mario86123: 成功了 感謝~ 05/14 08:28
Bencrie: 堆疊損毀跟堆積損毀是不一樣的東西啊啊啊 05/16 22:49

你可能也想看看

搜尋相關網站