C語(yǔ)言之關(guān)鍵字static的作用(深度刨析)-創(chuàng)新互聯(lián)

static用來(lái)說(shuō)明靜態(tài)變量,并且static的作用分為以下三種:

10年積累的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有洪山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

1.修飾局部變量-稱為靜態(tài)局部變量

2.修飾全局變量-稱為靜態(tài)全局變量

3.修飾函數(shù)-稱為靜態(tài)函數(shù)

1.當(dāng)static修飾局部變量時(shí),使局部變量的生命周期延長(zhǎng),來(lái)段代碼說(shuō)明:

a.??我們知道,局部變量進(jìn)入時(shí)創(chuàng)建,出了作用域之后就銷毀了 ,而經(jīng)過static修飾過的局部變量的生命周期會(huì)延長(zhǎng),從而導(dǎo)致出了作用域之后局部變量不會(huì)被銷毀,也就是說(shuō)代碼中的變量a一直存在,存儲(chǔ)在內(nèi)存中(a的地址也不變)。

static int a=1;//當(dāng)代碼運(yùn)行到這一段時(shí)會(huì)直接跳過這一行代碼,從而導(dǎo)致a的值產(chǎn)生累計(jì)的效果。

這樣解釋你如果可以理解的話,那么我們就進(jìn)行更深入的解析。

b.??我們的內(nèi)存分三個(gè)區(qū):棧區(qū),堆區(qū),靜態(tài)區(qū)。

而:

int a = 1;//局部變量a是放在棧區(qū)的。進(jìn)了作用域創(chuàng)建,出來(lái)作用域銷毀。
staic int a = 1;//此時(shí)a是靜態(tài)變量,是存儲(chǔ)在靜態(tài)區(qū)的。出了作用域不銷毀,直到程序結(jié)束才銷毀。

c.??所以綜上得出結(jié)論:static修飾的變量實(shí)際上是改變了變量在內(nèi)存中的存儲(chǔ)類型(使得變量從一開始的棧區(qū)轉(zhuǎn)移到靜態(tài)區(qū))從而導(dǎo)致生命周期延長(zhǎng),但是并不影響作用域。

2.static修飾全局變量時(shí),將外部鏈接屬性變成了內(nèi)部鏈接屬性,使全局變量的作用域只能在該源文件中執(zhí)行。(全局變量是具有外部鏈接屬性的)

//這里extern是用來(lái)申明外部符號(hào)的。

僅僅加了一個(gè)static就開始報(bào)錯(cuò)。

3.static修飾函數(shù)時(shí),將外部鏈接屬性變成了內(nèi)部鏈接屬性,使函數(shù)的作用域只能在該源文件中執(zhí)行(與修飾全局變量十分類似)

?????????????????????????????????????????那么請(qǐng)留下您的足跡,咱們一起進(jìn)步?。?!

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

本文題目:C語(yǔ)言之關(guān)鍵字static的作用(深度刨析)-創(chuàng)新互聯(lián)
瀏覽路徑:http://bm7419.com/article4/dgdpie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、建站公司做網(wǎng)站、ChatGPT、企業(yè)網(wǎng)站制作、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名