為什么你寫的嵌入式代碼經常產生bug
時間:2024-08-12 來源:華清遠見
程序員的工作內容

什么是bug?
程序錯誤,即英文的Bug,也稱為缺陷、臭蟲,是指在軟件運行中因為程序本身有錯誤而造成的功能不正常、死機、數據丟失、非正常中斷等現象。 早期的計算機由于體積非常龐大,有些小蟲子可能會鉆入機器內部,造成計算機工作失靈。史上的第一只 Bug ,真的是因為一只飛蛾意外走入一電腦而引致故障,因此Bug從原意為臭蟲引申為程序錯誤。
為什么你的代碼經常產生bug?
1、代碼不規范
代碼不縮進,邏輯全憑自己對代碼的理解,代碼長了,看著看著就亂了

括號不認真加,導致執行和預期不一樣

介紹一個好用的代碼調整工具 nodepad++
修改前:

一鍵調整代碼格式:

Github 鏈接
//github.com/ywx/NppAStyle/releases/tag/v0.2.9
2、不寫注釋
如果該代碼出了bug,修改bug的人完全需要重新梳理你當時的想法,你曾經的努力,都付諸東流了。

3、不會內存管理
內存訪問越界,尤其在使用數組的時候
申請的堆空間,一定要記得釋放
未初始化的變量,直接使用,野指針隨意使用
變量數據類型不匹配,數據類型轉換過程中,導致丟失數據
4、并發競爭整不明白
在多進程多線程的操作中,需要清晰的考慮清楚進程或者線程之間的關系,執行順序,防止出現同步或者互斥不能完成
5、測試不全面
一個健壯的代碼,一定要進行全面的測試,尤其是邊界值附近,一定要把所有可能性都測試下。

寫代碼并不難,不過對待代碼要細心、耐心,細節決定成敗。

