您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么利用Debug調試代碼解決0xC0000005錯誤”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
VS2019利用Debug調試代碼解決0xC0000005: 讀取位置 0x0000000000000000 時發生訪問沖突
之前一直是使用release發布代碼模式進行程序編譯,前天突然出現這個問題:
0xC0000005: 讀取位置 0x0000000000000000 時發生訪問沖突
查找資料發現大概率是出現了空指針。沒有判斷指針是否為空就進行后續操作導致的錯誤,但是release模式并沒有提示問題出現在哪里,只是顯示程序崩掉,并且給你錯誤信息,查找資料后發現Release 稱為發布版本,它往往是進行了各種優化,使得程序在代碼大小和運行速度上都是最優的,以便用戶很好地使用,但是會忽略調試信息,這不利于我們進行程序調試。(所以我只憑借經驗進行初步調試,但是效率很低也沒有解決實際問題)
而debug配置能夠包含調試信息,并且不作任何優化,便于程序員調試程序。
這就方便我們進行程序的調試和斷點設置,設置了斷點就可以看到所有變量的信息。就方便我們找到問題出現在了哪里。
果然,當我將配置改為debug后,運行程序,就會自動顯示下圖所示地方發生錯誤:為nullptr,空指針。那么問題就顯而易見了。
但是我在上句語句中已經獲得了pGalvanometer
對象指針,這里不應該是nullptr。所以我在該位置設置斷點,運行后,發現hr
不為S_OK
,而是顯示加載有問題,那么很顯然問題出在我加載外部組件COM中了。
但是我并沒有改變COM組件的加載代碼,于是認為可能組件注冊出現問題。于是我重新注冊了一下COM組件。
“怎么利用Debug調試代碼解決0xC0000005錯誤”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。