九九百科網

位置:首頁 > 經驗 > 

在C語言中數組和鏈表有什麼區別

經驗2.61W

在C語言中數組和鏈表有什麼區別

兩種都屬於數據結構的一種,它們的區別如下所示:

1、邏輯結構:數組必須事先定義固定的長度(元素個數),不能適應數據動態地增減元素個數,當數據增加時,可能會超出原先定義的元素個數;當數據減少時,會造成內存浪費。鏈表動態地進行存儲分配,可以適應數據增減,且可以方便插入、刪除數據。

2、內存分配:C語言有內存四區,分別為堆區,棧區,代碼區,靜態區。定義數組時計算機自動在棧區中申請內存,比較方便,但自由度小。鏈表從堆中申請內存且必須手動申請,並且手動釋放內存,對於程序員來説比較操作

標籤:鏈表 數組 語言