C++ 參數(shù)和變量的局部性

2023-03-20 15:49 更新

參數(shù)和變量只存在于它們所在的函數(shù)內(nèi)部。在main函數(shù)內(nèi)部,沒有phil這個東西存在。如果你想使用這個變量,編譯器會報錯。同樣的,在printTwice內(nèi)部,也沒有argument這個變量。

類似這樣的變量被稱為局部變量。為了跟蹤參數(shù)和局部變量,畫一張棧圖還是很有用的。像狀態(tài)圖一樣,棧圖展示出每個變量的值,然而變量都包含在大方框里,大方框表示變量所屬的函數(shù)。

例如,printTwice的棧圖如下:

enter image description here

每當(dāng)函數(shù)被調(diào)用,就會創(chuàng)建此函數(shù)的一個實例。函數(shù)的每個實例都包含自己的參數(shù)和局部變量。上圖中外面帶函數(shù)名的方框代表函數(shù)實例,方框里面是函數(shù)的參數(shù)和局部變量。

此例中,main函數(shù)有一個局部變量argument,沒有參數(shù)。printTwice沒有局部變量,有一個參數(shù)phil。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號