如果你是C/C++程序員,如果你寫過一個很復(fù)雜的程序,如果你經(jīng)常碰到莫名其妙的崩潰問題。那么你就有可能遭遇了野指針。如果你比較細心,注意了Debug output輸出窗口的話,那么你就有可能注意到這樣一行提示:
網(wǎng)絡(luò)上關(guān)于這個問題提問的人不少,但是真正給的出答案的卻少之又少。
那么何為野指針呢?野指針與NULL指針不同.所謂野指針是指指針所指的內(nèi)存已經(jīng)回收,而繼續(xù)使用該指針,導(dǎo)致未定義行為.
===============================================================
我們設(shè)置好Path環(huán)境變量,將其指向Debug tools工具的目錄下。 輸入如下命令行: gflags /p App.exe /full 或者 pageheap app.exe /full 該命令行會在注冊表里設(shè)置一些調(diào)試參數(shù),使內(nèi)存在使用的時候加入了保護機制,所以一旦內(nèi)存寫越界,或者發(fā)生野指針的問題,都會導(dǎo)致一個中斷。由此,你就可以確定問題到底出在哪里了。
|