作者s86080 (鬆)
看板EE_DSnP
標題[問題] 關於stack smashing detected
時間Sat Oct 15 13:14:42 2011
請問一下
我在complie hw1.2.p2b.cpp 時都沒有出現問題
但在執行的時候 會出現程式記憶體區斷錯誤
用ddd找了一下 發現是在進入sort的時候掛掉的
先前在還沒有寫Book的"<"時
有先測試程式 單純看看Book的Constructo有沒有寫對
那時候的main()裡還沒有執行sort()以下的程式碼
當時執行程式有出現 stack smashing detected
那時候沒有理他 後來就變成程式記憶體區斷錯誤了
請問這應該是什麼地方出問題呢QQ??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.248.0.106
1F:推 wind42:我一開始也是出現一樣的錯誤(segmentation fault) 10/15 14:31
2F:→ wind42:後來發現是operator"<"的演算法沒寫好 10/15 14:32
3F:→ wind42:把這部分修正之後就OK了;應該可以先從這裡找看看問題 10/15 14:33
4F:→ sycjohn:問題應該在book的比較的地方 年代那邊要確定是有截到數字 10/15 14:45
5F:→ s86080:感謝~ 我把 "<" 的部份寫好了 就沒有segmentation fault了 10/15 15:14
6F:→ s86080:但還是在程式執行完main()的時候跳出 stack smashing detec 10/15 15:15
7F:→ s86080:ed 我發現應該是我在book的constructor出了問題 換一個寫 10/15 15:16
8F:→ s86080:法後就沒有問題了 不過還是想問一下stact smashing是什麼? 10/15 15:18
9F:→ s86080:更正~ stack smashing detected > < 10/15 15:19
10F:推 jim1029:那是gcc的一個保護機制 避免buffer overflow 10/15 16:03