遞迴那些事兒

2021-07-14 20:22:47 字數 441 閱讀 8046

#include

#include

#include

#include

//求階乘

int fac(int n)

if(n>1)

}// 求累加

int add(int n)

// 求字串長度

int my_strlen(const

char *dest)

}int main()

遞迴注意事項:

遞迴雖然經典,但是也有他的缺點:

第一、遞迴是反覆地呼叫自己本身,函式呼叫的開銷遠大於迴圈,呼叫的層次越多效率越低。故建議呼叫深度不要太深。

第二、遞迴在作業系統中有棧的結構,會消耗一定的空間,呼叫深度太多可能會導致棧溢位。

第三、遞迴的條件設定一定要正確,避免產生死迴圈。

鏈結那些事兒

鏈結,就是將不同部分的 和資料收集和組合成為乙個單一檔案的過程,這個檔案可被載入到儲存器中執行。鏈結可以執行於編譯時 compile time 也就是源 被翻譯成機器 時 eg.普通的鏈結器鏈結,以及靜態鏈結庫,由靜態鏈結器鏈結 也可以執行於載入時 例如動態鏈結庫的載入時鏈結 也可以執行於執行時 r...

指標那些事兒

1.野指標 也叫懸擺指標,迷失指標 野指標是導致bug的罪魁禍首之一。對指標呼叫delete後 釋放掉了它指向的記憶體,野指標還是指向原來的位址 如果沒有重新賦值就使用它,將導致難以預料的後果。因為此時操作野指標,它指向的記憶體位址可能已經分配給其他變數在使用了。所以指標在delete之後,如果不再...

PhalApi那些事兒

2.基於phalapi的redis擴充套件 詳細參考位址如下 return array redis配置項 redis array redis快取配置項 servers array host 127.0.0.1 redis伺服器位址 port 6379 redis埠號 prefix developer...