最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

C/C++編程筆記:靜態(tài)變量,一篇文章掌握C語(yǔ)言常用知識(shí)點(diǎn)

2020-12-24 22:28 作者:C語(yǔ)言編程__Plus  | 我要投稿

今天帶你學(xué)會(huì)C語(yǔ)言靜態(tài)變量知識(shí)!另外平安夜快樂(lè)哦~

靜態(tài)變量具有即使超出范圍也能保留其值的屬性!因此,靜態(tài)變量在其先前的作用域中保留其先前的值,而不會(huì)在新的作用域中再次初始化。


句法:

靜態(tài)數(shù)據(jù)類(lèi)型var_name = var_value;

以下是有關(guān)C中靜態(tài)變量的一些有趣事實(shí)。

1)程序運(yùn)行時(shí),靜態(tài)int變量保留在內(nèi)存中。當(dāng)聲明了該變量的函數(shù)調(diào)用結(jié)束時(shí),普通或自動(dòng)變量將被破壞。

例如,我們可以使用static int來(lái)計(jì)數(shù)一個(gè)函數(shù)被調(diào)用的次數(shù),但是自動(dòng)變量不能用于此目的。

例如下面的程序打印“ 1 2”


輸出:1 2

但是下面的程序打印1 1


輸出:1 1

2)靜態(tài)變量是在數(shù)據(jù)段而不是堆棧段中分配的內(nèi)存。

3)如果未顯式初始化靜態(tài)變量(如全局變量),則初始化為0。例如,在下面的程序中,x的值打印為0,而y的值則是垃圾。


輸出:0??[some_garbage_value]

4)在C語(yǔ)言中,只能使用常量文字初始化靜態(tài)變量。


請(qǐng)注意,這種情況在C ++中不成立。因此,如果將程序另存為C ++程序,它將編譯并運(yùn)行正常。

5)在C / C ++中,靜態(tài)全局變量和函數(shù)也是可能的。這樣做的目的是將變量或函數(shù)的范圍限制為文件。

6)靜態(tài)變量不應(yīng)在結(jié)構(gòu)內(nèi)部聲明。原因是C編譯器要求將整個(gè)結(jié)構(gòu)元素放在一起(即,結(jié)構(gòu)成員的內(nèi)存分配應(yīng)該是連續(xù)的)??梢栽诤瘮?shù)內(nèi)部聲明結(jié)構(gòu)(堆棧段)或動(dòng)態(tài)分配內(nèi)存(堆段),甚至可以是全局的(BSS或數(shù)據(jù)段)。無(wú)論哪種情況,所有結(jié)構(gòu)成員都應(yīng)駐留在同一內(nèi)存段中,因?yàn)榻Y(jié)構(gòu)元素的值是通過(guò)計(jì)算元素相對(duì)于結(jié)構(gòu)起始地址的偏移量來(lái)獲取的。單獨(dú)將一個(gè)成員分離到數(shù)據(jù)段將破壞靜態(tài)變量的目的,并且可能使整個(gè)結(jié)構(gòu)為靜態(tài)。

希望對(duì)大家有幫助!

另外如果你想更好的提升你的編程能力,學(xué)好C語(yǔ)言C++編程!彎道超車(chē),快人一步!筆者這里或許可以幫到你~

UP在主頁(yè)上傳了一些學(xué)習(xí)C/C++編程的視頻教程,有興趣或者正在學(xué)習(xí)的小伙伴一定要去看一看哦!會(huì)對(duì)你有幫助的~

分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門(mén)教程)

歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長(zhǎng)比自己琢磨更快哦!

編程學(xué)習(xí)書(shū)籍分享:


編程學(xué)習(xí)視頻分享:



C/C++編程筆記:靜態(tài)變量,一篇文章掌握C語(yǔ)言常用知識(shí)點(diǎn)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
辰溪县| 安顺市| 彩票| 万州区| 新绛县| 府谷县| 伊通| 孟州市| 黄石市| 石嘴山市| 桦南县| 那曲县| 泗洪县| 桦南县| 同心县| 赤壁市| 翁牛特旗| 宜都市| 聊城市| 永和县| 平阴县| 福建省| 鹤庆县| 北安市| 昌黎县| 宁南县| 巴东县| 南和县| 清新县| 义马市| 钟祥市| 马关县| 涪陵区| 岳池县| 石棉县| 南木林县| 普陀区| 北辰区| 虎林市| 罗平县| 蒙阴县|