Illegal instruction錯誤的定位---忽略編譯期警告的代價


在原計算機的linux c++程序可以正確跑起來,但是換了一台機器運行時出現致命錯誤,程序直接當掉,錯誤提示如下:

Illegal instruction (core dumped)

造成改錯的主要原因是,我們來先看下編譯的提示,警告如下:

/home/xxx/src/aa.cpp:621:1: warning: 
      control reaches end of non-void function [-Wreturn-type]
}
^

仔細審查代碼發現,函數少了返回值,疼的很,居然編譯還通過,只是警告而已。

這告訴了我們一個重要事實:編譯期的警告是非常重要的!

 

參考資料

[1]. 一個低級Illegal instruction錯誤的定位--忽略編譯期警告就得加倍償還


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM