一.錯誤原因
出現這個錯誤的原因多半是由於指針出現錯誤,即出現了空指針,也有說是變量沒有初始化,筆者碰到的情況是發生了內存溢出。二.定位方法
一般這種問題直接導致程序崩潰,直接調試,就能找到對應的問題函數A,仔細檢查一下指針變量就能找到原因。事實上有可能出現問題的地方並不是報錯的函數A,筆者出現的問題就是,報錯的函數A中調用的另一個函數B出現了問題,最后B調用結束,才拋出錯誤,所以調試器將錯誤定位到了函數A中B調用結束的下一行。三.具體錯誤
在函數B中,筆者使用了sscanf_s(ptr,"%d",&num) 函數,為了節省空間,num申請的是unsigned char類型。事實上正是這個函數出現了問題,%d默認傳入的變量是int類型,因此導致了內存溢出。這種問題需要編程時多加注意。附: 關於sscanf_s的陷阱
``` #include