第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

以下內(nèi)容是關于free失敗的例子,麻煩大佬幫忙看看~

以下內(nèi)容是關于free失敗的例子,麻煩大佬幫忙看看~

瀟湘沐 2021-12-31 10:06:14
當我們釋放動態(tài)分配的內(nèi)存時,通常會遭遇內(nèi)存釋放失敗的錯誤,我遇到這么一個問題,當我無意間越界訪問了動態(tài)分配內(nèi)存時,在釋放內(nèi)存時,就會出現(xiàn)Access violation writing的錯誤,但我不太確定是不是由于這個原因引起的錯誤,希望高手解釋一下,引起free失敗的常見原因
查看完整描述

2 回答

?
小唯快跑啊

TA貢獻1863條經(jīng)驗 獲得超2個贊

使用free(ptr)釋放ptr指向的內(nèi)存時并不需要提供要釋放內(nèi)存的大小,這是因為在ptr附近的某個位置存放有維護該內(nèi)存區(qū)域的數(shù)據(jù),這是由內(nèi)存申請函數(shù) malloc 等產(chǎn)生的。實際上在ptr之前有個結構體,指示了該塊內(nèi)存的信息。如果你的程序因為內(nèi)存越界內(nèi)修改了這個結構體,則會導致free函數(shù)出錯返回,并不釋放任何內(nèi)存。
其他出錯情況也大多由于類似原因,比如傳遞了錯誤的指針,該指針已經(jīng)被釋放或與空閑空間中的某個區(qū)塊重疊等。

查看完整回答
反對 回復 2022-01-04
?
慕尼黑的夜晚無繁華

TA貢獻1864條經(jīng)驗 獲得超6個贊

free()函數(shù)釋放內(nèi)存失敗通常有兩個原因:
1.重復釋放;
2.想釋放不是由該進程分配的內(nèi)存.
重復釋放就是指針指向的內(nèi)存已經(jīng)釋放了,再次調(diào)用free()函數(shù)去釋放它.
釋放不是由該進程分配的內(nèi)存時有可能會造成異常,通常比如說一個程序調(diào)用DLL里面的函數(shù),該函數(shù)分配了內(nèi)存,而調(diào)用者去釋放該內(nèi)存就有可能造成異常(此時應該在DLL里面提供一個函數(shù)專門來釋放分配的內(nèi)存)

查看完整回答
反對 回復 2022-01-04
  • 2 回答
  • 0 關注
  • 432 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號