新聞中心
本篇文章為大家展示了如何分析static關(guān)鍵字,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比無錫網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式無錫網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋無錫地區(qū)。費(fèi)用合理售后完善,10年實體公司更值得信賴。
static作為C語言中的關(guān)鍵字,其引入之初是為了解決局部變量在函數(shù)結(jié)束之后其值仍然可以得到保存的問題。隨后在C語言的拓展中,又增加了一個功能,修飾函數(shù)或變量的可見性為本文件。由此我們可以知道,static關(guān)鍵字在C語言中有兩個作用:一,修改變量;二,修飾函數(shù)。
一:static修飾變量
變量分為局部變量(函數(shù)體內(nèi)定義的變量)和全局變量(函數(shù)體外定義的變量),不管其修飾的是局部變量還是全局變量,為變量分配的內(nèi)存空間都在靜態(tài)區(qū)。
(1)靜態(tài)全局變量:
作用于僅限于變量被定義的文件中,其他文件即使使用了extern聲明也無法使用這個變量。從變量定義開始,到文件結(jié)尾這部分代碼可以使用這個靜態(tài)全局變量。變量定義之前的代碼或者其他文件中的代碼無法訪問這個變量。
(2)靜態(tài)局部變量:
由于局部變量的作用域本身就被限定在了函數(shù)體內(nèi),所以不存在是否在其他文件中使用的爭論,這里的static修飾,使得局部變量具有了全局變量的一些屬性。在函數(shù)第一次被執(zhí)行時,靜態(tài)局部變量就被初始化,在函數(shù)執(zhí)行完畢之后,這個靜態(tài)局部變量并不會被銷毀,而是繼續(xù)在內(nèi)存中存在。在以后的函數(shù)執(zhí)行中,這個變量的初始化語句不會被再次執(zhí)行,但其賦值語句會每次都會被執(zhí)行,函數(shù)執(zhí)行完畢之后,變量的值就在內(nèi)存中更新并不會銷毀。
二:static修飾函數(shù)
使得函數(shù)的訪問屬性變?yōu)橹荒茉诒疚募性L問。由于C語言有著比較悠久的歷史,在發(fā)展過程中,不想增加其他的關(guān)鍵字,所以使用了static這個關(guān)鍵字來賦予這個新的語法特性和含義。
上述內(nèi)容就是如何分析static關(guān)鍵字,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前文章:如何分析static關(guān)鍵字
新聞來源:http://ef60e0e.cn/article/piespp.html