c語(yǔ)言靜態(tài)成員存儲(chǔ)在哪 static修飾的變量放在內(nèi)存哪里的?
static修飾的變量放在內(nèi)存哪里的?static修飾的靜態(tài)變量?jī)?chǔ)存時(shí)在內(nèi)存的數(shù)據(jù)區(qū);也就是靜態(tài)變量能保存在——數(shù)據(jù)區(qū)。棧中保存到都差不多數(shù)據(jù)類型的變量和自定義設(shè)置的對(duì)象的摘錄(又不是對(duì)象),對(duì)象本身
static修飾的變量放在內(nèi)存哪里的?
static修飾的靜態(tài)變量?jī)?chǔ)存時(shí)在內(nèi)存的數(shù)據(jù)區(qū);也就是靜態(tài)變量能保存在——數(shù)據(jù)區(qū)。
棧中保存到都差不多數(shù)據(jù)類型的變量和自定義設(shè)置的對(duì)象的摘錄(又不是對(duì)象),對(duì)象本身都能保存在堆區(qū)中,被先執(zhí)行的方法的也pull到棧中,當(dāng)方法負(fù)責(zé)執(zhí)行完后再cancel出棧。
c語(yǔ)言存儲(chǔ)形式怎么看?
C語(yǔ)言動(dòng)態(tài)存儲(chǔ)與支持靜態(tài)存儲(chǔ)
支持靜態(tài)存儲(chǔ)是指在程序運(yùn)行期間由系統(tǒng)分配單獨(dú)計(jì)算的存儲(chǔ)空間的;動(dòng)態(tài)存儲(chǔ)是在程序運(yùn)行期間依據(jù)是需要通過(guò)相冊(cè)的分配存儲(chǔ)空間的。
內(nèi)存中的供用戶可以使用的存儲(chǔ)空間這個(gè)可以可分3部分,
程序區(qū)
動(dòng)態(tài)和靜態(tài)存儲(chǔ)區(qū)
動(dòng)態(tài)存儲(chǔ)區(qū)
全局變量徹底能保存在動(dòng)態(tài)和靜態(tài)存儲(chǔ)區(qū)中,在程序開(kāi)始執(zhí)行時(shí)給全局變量分配存儲(chǔ)區(qū),程序執(zhí)行完畢就施放。
在動(dòng)態(tài)存儲(chǔ)區(qū)儲(chǔ)存時(shí)以上數(shù)據(jù)
函數(shù)形式參數(shù)。
函數(shù)中定義的沒(méi)有用關(guān)鍵字static聲明的變量,即自動(dòng)啟動(dòng)變量。
函數(shù)調(diào)用時(shí)的現(xiàn)場(chǎng)保護(hù)和直接返回地址等。
在C語(yǔ)言中,每一個(gè)變量和函數(shù)都是兩個(gè)屬性:
數(shù)據(jù)類型
數(shù)據(jù)的存儲(chǔ)類別。
C語(yǔ)言的存儲(chǔ)類別包括4種:
自動(dòng)啟動(dòng)的(auto)
靜態(tài)的(static)
寄存器的(register)
外部的(extern)。
C語(yǔ)言局部變量的存儲(chǔ)類別
不自動(dòng)變量(auto變量)
函數(shù)中的局部變量,如果不專門買聲明聲明static存儲(chǔ)類別,大都代碼地分配存儲(chǔ)空間的,數(shù)據(jù)存儲(chǔ)在動(dòng)態(tài)存儲(chǔ)區(qū)中。自動(dòng)變量用關(guān)鍵字auto做存儲(chǔ)類別聲明。
支持靜態(tài)局部變量(static局部變量)
函數(shù)中的局部變量的值在函數(shù)調(diào)用結(jié)束后不消失而繼續(xù)剩余原值,即其占用的存儲(chǔ)單元不能量,在下一次再動(dòng)態(tài)創(chuàng)建該函數(shù)時(shí),該變量已有值。
寄存器變量(register變量)
為提高執(zhí)行效率,愿意將局部變量的值放在CPU中的寄存器中,是需要1小時(shí)10分真接從寄存器收起參加除法運(yùn)算,用不著再到內(nèi)存中去存取。而對(duì)寄存器的存取速度遠(yuǎn)低于對(duì)內(nèi)存的存取速度,并且這樣的做可以提高執(zhí)行效率,這種變量叫寄存器變量,用關(guān)鍵字register作聲明。
C語(yǔ)言全局變量的存儲(chǔ)類別
在一個(gè)文件內(nèi)存儲(chǔ)外部變量的作用域
要是因此某種判斷,在定義點(diǎn)之前的函數(shù)需要引用該外部變量,則估計(jì)在直接引用之前用關(guān)鍵字extern對(duì)該變量作“外部變量聲明”,來(lái)表示把該外部變量的作用域擴(kuò)充卡至此位置。
將外部變量的作用域擴(kuò)充卡到其他文件。
將外部變量的作用域限制下載在本文件中。
注意,用auto、register和static聲明變量時(shí),是在定義法變量的基礎(chǔ)上算上這些關(guān)鍵字,而不能另外在用。