我們今天來講下函數(shù)的設(shè)計原則。函數(shù)從意義上應(yīng)該是一個獨立的功能模塊,函數(shù)名要在一定程度上反映函數(shù)的功能;函數(shù)參數(shù)名要能夠體現(xiàn)參數(shù)的意義,盡量避免在函數(shù)中使用全局變量。

專注于為中小企業(yè)提供網(wǎng)站制作、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)靜安免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
A、當(dāng)函數(shù)參數(shù)不應(yīng)該在函數(shù)體內(nèi)部被修改時,應(yīng)加上 const 聲明;如果參數(shù)是指針,且僅作輸入?yún)?shù),則一個加上 const聲明。例: void str_copy(char *str_dest, const char *str_src);
B、不能省略返回值的類型,如果函數(shù)沒有返回值,則應(yīng)聲明其為 void類型;對參數(shù)進(jìn)行有效性檢查,對于指針參數(shù)的檢查尤為重要;不要返回指向“棧內(nèi)存”的指針,棧內(nèi)存在函數(shù)體結(jié)束時被自動釋放。
C、函數(shù)體的規(guī)模要小,盡量控制在 80 行代碼之內(nèi)相同的輸入對應(yīng)相同的輸出,避免函數(shù)帶有“記憶”功能;避免函數(shù)有過多的參數(shù),參數(shù)個數(shù)盡量控制在 4 個以內(nèi)。
D、有時候函數(shù)不需要返回值,但為了增加靈活性,如支持鏈?zhǔn)奖磉_(dá),可以附加返回值。
char s[64]; int len = strlen(strcpy(s, "android"));
E、函數(shù)名與返回值類型在語義上不可沖突。
歡迎大家一起來學(xué)習(xí) C 語言,可以加我QQ:243343083。
當(dāng)前題目:C之函數(shù)設(shè)計原則(四十二)
URL網(wǎng)址:http://www.chinadenli.net/article18/peecdp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、品牌網(wǎng)站設(shè)計、手機(jī)網(wǎng)站建設(shè)、商城網(wǎng)站、定制網(wǎng)站、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)