推 LPH66:你檢查一下有沒有陣列存取超出範圍 08/18 14:30
→ LPH66:(不只有要來的還包含你在函式內宣告的都檢查一下) 08/18 14:31
→ LPH66:例如那個 line 也許有可能... 08/18 14:32
→ LPH66:我是說 lines 陣列 08/18 14:32
→ guanrulee:OK 我險察一下 08/18 14:44
→ james732:linux底下有個好工具叫「valgrind」可以看看 08/18 14:48
→ angleevil:ptt有個超哥叫「james732」,不過valgrind不錯 08/18 14:53
謝謝大家幫忙^^
真的是有個陣列只宣告了8個位置,
陣列的INDEX在某一次的時候等於8, 而超過宣告的數量了,
=======
不過我在用Valgrind的時候,
他只會顯示我的執行檔名字,
我看網路上別人的教學文章中,
他的還會寫是哪個.c檔且第幾行出錯都會寫出來,
http://endlesschildhood.blogspot.com/2010/01/valgrind-tutorial.html
我是照著這一篇的講解跑的
--leak-check=full
--log-file=vglog
用了這兩個參數,
我的code是有25個.cpp檔(一個main.cpp), 還有24個相對應的.h檔
是因為我比較多檔案所以他寫不出是哪個檔案第幾行嗎?
謝謝
※ 編輯: guanrulee 來自: 114.33.208.33 (08/18 17:34)
※ 編輯: guanrulee 來自: 114.33.208.33 (08/18 17:35)
→ james732:g++編譯的時候加上 -g 試試 08/18 17:49
真的加了就ok了 謝謝樓上^^
※ 編輯: guanrulee 來自: 1.175.132.15 (08/18 19:08)