卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

c語(yǔ)言 C語(yǔ)言中,哪種存儲(chǔ)類(lèi)的作用域與生命周期是不一致的?

C語(yǔ)言中,哪種存儲(chǔ)類(lèi)的作用域與生命周期是不一致的?局部靜態(tài)變量,作用域是局部的,生命周期是整個(gè)過(guò)程。靜態(tài)局部變量屬于靜態(tài)存儲(chǔ)模式,具有以下特點(diǎn):](1)靜態(tài)局部變量在函數(shù)中定義,但調(diào)用時(shí)不存在,退出函

C語(yǔ)言中,哪種存儲(chǔ)類(lèi)的作用域與生命周期是不一致的?

局部靜態(tài)變量,作用域是局部的,生命周期是整個(gè)過(guò)程。

靜態(tài)局部變量屬于靜態(tài)存儲(chǔ)模式,具有以下特點(diǎn):

](1)靜態(tài)局部變量在函數(shù)中定義,但調(diào)用時(shí)不存在,退出函數(shù)時(shí)消失,如自動(dòng)變量。靜態(tài)局部變量總是存在的,也就是說(shuō),它的生命周期就是整個(gè)源程序。

(2)雖然靜態(tài)局部變量的生存期是整個(gè)源程序,但其作用域仍然與自動(dòng)變量相同,即只能在定義變量的函數(shù)中使用。退出函數(shù)后,雖然變量繼續(xù)存在,但不能使用。

既然C語(yǔ)言函數(shù)的局部變量會(huì)被釋放,那為什么函數(shù)還可以把它return返回呢?

看了下面兄弟的回信,我們只能說(shuō)他們一半是對(duì)的。

真正的原因是abi(應(yīng)用程序二進(jìn)制接口)。

ABI定義了與系統(tǒng)交互的細(xì)節(jié),如數(shù)據(jù)類(lèi)型、大小和對(duì)齊方式;調(diào)用約定(控制函數(shù)的參數(shù)傳遞方向、可變長(zhǎng)度處理、堆棧清理體以及如何接受返回值等);系統(tǒng)調(diào)用的編碼以及應(yīng)用程序如何對(duì)操作系統(tǒng)進(jìn)行系統(tǒng)調(diào)用系統(tǒng);以及采用完整ABI操作系統(tǒng)基本格式、程序庫(kù)等的第二代對(duì)象文件。完整的ABI,如英特爾二進(jìn)制兼容標(biāo)準(zhǔn)(IBCs),允許支持它的操作系統(tǒng)上的程序在支持此ABI的其他操作系統(tǒng)上運(yùn)行,而無(wú)需修改。

其他ABI標(biāo)準(zhǔn)化細(xì)節(jié)包括C名稱修改和同一平臺(tái)上編譯器之間的調(diào)用約定,但不包括跨平臺(tái)兼容性。

至于下面兄弟提到的eax save返回值,這只是X86的ABI規(guī)范。在其他CPU架構(gòu)平臺(tái)(如PowerPC)中,實(shí)現(xiàn)是不同的!--在PowerPC中,返回值存儲(chǔ)在R3寄存器中