到這裡 c 語言進階剖析就要結束了,在本系列部落格的最後,給大家簡單說一下函數的設計原則
函數設計原則
函數從意義上應該是一個獨立的功能子產品
函數名要一定程度上反應函數的功能
函數參數名要能展現參數的意義
避免在函數中使用全局變量(可能同樣的輸入,輸出不一樣了)
如下兩個函數:
第一個函數我們看了以後并不知道這個函數是幹什麼的,也不知道兩個參數分别代表什麼。但是第二個函數一下就從名字中看出這個函數是用于字元串拷貝用的,第一個參數是目的位址,第二個參數是源位址,這樣的代碼可以自解釋,可讀性強。
當函數參數不應該在函數體内被修改時,應加上 const 聲明
如果參數是指針,且僅作輸入參數,則應加上 const 聲明
不能省略傳回值類型,沒有傳回值應聲明為 void(不寫預設為 int)
對參數進行有效性檢查,尤其是指針
不要傳回指向“棧記憶體”的指針,比如指向局部變量的指針(形成野指針)
函數規模應該小,最好不要超過 80 行
函數不應該有過多的參數,最好在 4 個之内
最後,學習 c 語言要勤思考多動手,c 語言的難點是指針的學習,要清楚指針的本質,指針的運算,指針和數組的差別等等,大多數的 bug 都是指針導緻的。本系列的部落格就到這裡,謝謝!!!