天天看點

問題記錄-當glibc detected *** free(): invalid next size (normal)出現

當glibc detected *** free(): invalid next size (normal)出現

是記憶體洩露的問題。 

(1)一般是free了沒有配置設定的記憶體

(2)還有就是配置設定了記憶體忘記釋放也有可能會出現這樣的問題。 

(3)最後查出來是數組循環的時候越界了 , 寫到了其他的記憶體裡面, 然後一free那個區域就出現了這樣的問題。

是有allocate引起的,一個debug的方法是把你懷疑的矩陣(比如釋放了就會報記憶體錯誤)定義成靜态的,這樣如果出現越界,會報段錯誤。依次檢查是否你的數組真的越界了。

繼續閱讀