關(guān)于C語言內(nèi)存的一些理解
內(nèi)存這個(gè)大話題
key:心里一定要有內(nèi)存的邏輯圖。
程序是什么?
程序 = 代碼 + 數(shù)據(jù)
代碼放在Flash中代碼段,可變的數(shù)據(jù)(全局變量、局部變量)放在內(nèi)存中。
運(yùn)行程序的目的是什么?
得到運(yùn)行結(jié)果; 關(guān)注運(yùn)行過程;既要結(jié)果又要過程;
為什么需要內(nèi)存?
程序中有可變數(shù)據(jù)(全局變量、局部變量),這些可變數(shù)據(jù)就是放在內(nèi)存中的。
內(nèi)存如何管理?
每個(gè)內(nèi)存單元都有唯一的地址,通過尋址來管理內(nèi)存。
關(guān)鍵點(diǎn)
一個(gè)字節(jié)為一個(gè)內(nèi)存單元,一個(gè)內(nèi)存單元有一個(gè)內(nèi)存地址。
C語言是如何操作內(nèi)存的?
定義變量時(shí),編譯器自動(dòng)的申請(qǐng)一塊內(nèi)存供我們使用。
管理內(nèi)存的各種方式?
數(shù)組、結(jié)構(gòu)體、棧(FILO)、堆(大內(nèi)存)