堆和棧的區別有哪些
- 教育
- 關注:1.66W次
經常所說的堆疊堆疊是堆和棧統稱,堆是堆,棧是棧,合在一起統稱堆疊。那麼究竟堆和棧的區別有哪些呢?
1、申請方式的不同。棧由系統自動分配,而堆是人為申請開闢;
2、申請大小的不同。棧獲得的空間較小,而堆獲得的空間較大;
3、申請效率的不同。棧由系統自動分配,速度較快,而堆一般速度比較慢;
4、儲存內容的不同。棧在函式呼叫時,函式呼叫語句的下一條可執行語句的地址第一個進棧,然後函式的各個引數進棧,其中靜態變數是不入棧的。而堆一般是在頭部用一個位元組存放堆的大小,堆中的具體內容是人為安排;
5、底層不同。棧是連續的空間,而堆是不連續的空間。
以上就是給各位帶來的關於堆和棧的區別有哪些的全部內容了。
- 文章版權屬於文章作者所有,轉載請註明 https://shbkb.com/zh-tw/jy/nv2ok.html