棧是後進先出性質的數據結構。
此外,
棧:
在函數調用時,第壹個進棧的是主函數中函數調用後的下壹條指令(函數調用語句的下壹條可執行語句)的地址,然後是函數的各個參數,在大多數的C編譯器中,參數是由右往左入棧的,然後是函數中的局部變量。註意靜態變量是不入棧的。
當本次函數調用結束後,局部變量先出棧,然後是參數,最後棧頂指針指向最開始存的地址,也就是主函數中的下壹條指令,程序由該點繼續運行。
堆:壹般是在堆的頭部用壹個字節存放堆的大小。堆中的具體內容有程序員安排。