局部變量
定義
- 局部變量是在函數內部定義的變量,只能在函數內部使用
- 函數執行結束后,函數內部的局部變量會被系統回收
- 不同的函數,可以定義相同名稱的局部變量,相互之間沒有任何關聯
作用
- 在函數內部使用,臨時 **保存 **函數內部使用所需要的數據
示例
def test1():
name="張三"
print("我的名稱叫:%s" %name)
name="李四"
print("我的名稱叫:%s" %name)
#定義同樣的 name變量, 與上一個函數中的name 沒有任何關系
def test2():
name="zhangsan"
print("我的名稱叫:%s" %name)
test1()
test2()
輸出結果
局部變量的生命周期
- 生命周期指的是:變量從** 創建** 到 被 **系統回收 **的過程
- 局部變量在函數執行時才會被創建
- 函數執行完成后,局部變量被系統回收
- 局部變量在生命周期內,可以用來存儲函數內部臨時使用的數據
全局變量
定義
- 全局變量是在 函數外部定義的變量 ,所有函數內部都可以使用這個變量
- 函數執行時,首選查找 函數內部 是否存在指定名稱的 局部變量 ,如果有,直接使用;如果沒有,查找 函數外部 是否存在 指定名稱的 全局變量 ,如果有,直接使用;如果沒有 就會報錯
作用
-
**全局變量 **是定義在函數變量,所有的函數 內部 都可以使用這個變量
-
在函數內部,可以通過全局變量的引用獲取對應的數據
-
在函數內部,不允許直接修改** 全局變量** 的引用(即: 使用賦值語句修改全局變量的值 )
-
如果需要修改全局變量,需要使用global 進行聲明
-
為了保證 **所有的函數 **都能使用到全局變量,應該將全局變量 **定義在所有的函數上方
**
示例
#定義全局變量
name="張三"
def test1():
#使用全局變量
print("我的名稱叫:%s" %name)
def test2():
# 使用局部變量,此時并不會修改全局變量
name="李四"
print("我的名稱叫:%s" %name)
def test3():
#使用全局變量,測試全部變量名稱是否被修改
print("我的名稱叫:%s" %name)
def test4():
#修改全局變量
global name
name="zhangsan"
print("我的名稱叫:%s" %name)
def test5():
#查看全局變量的名稱是否被修改成功
print("我的名稱叫:%s" %name)
test1()
test2()
test3()
test4()
test5()
輸出結果
全局變量的命名
- 在開發時,為了避免局部變量和全局變量出現混淆,在定義全局變量時應該增加 g_ 或者 gl_ 的前綴
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
函數
+關注
關注
3文章
4346瀏覽量
62968 -
局部變量
+關注
關注
0文章
14瀏覽量
9076 -
系統
+關注
關注
1文章
1019瀏覽量
21424
發布評論請先 登錄
相關推薦
labview深入探索------全局變量、局部變量與內存管理
labview深入探索------全局變量、局部變量與內存管理很多教科書上都提示要慎用局部變量和全局變量,主要有以下幾個原因:違背了數據流的編程讀取
發表于 07-13 17:49
LabVIEW結構的使用——全局變量和局部變量
全局變量和局部變量是LabVIEW用來傳遞數據的工具。LabVIEW編程是一種數據流編程,它是通過連線來傳遞數據的。但是如果一個程序太復雜的話,有時連線會很困難甚至無法連接,這時就需要用到局部變量
發表于 02-09 14:46
LabVIEW編程難點之局部變量與全局變量
最近學習Labview,找了3、4本書看,但是對局部變量和全局變量的說法不是特別清晰,就此跟大家討論下:Labview中局部變量是在一個VI中傳遞數據,如果說創建了前面板某個數值輸入控件類型為
發表于 01-08 20:46
謹慎使用局部變量和全局變量
局部和全局變量是高級的LabVIEW概念。它們不是LabVIEW數據流執行模型中固有的部分。使用局部變量和全局變量時,程序框圖可能會變得難以閱讀,因此需謹慎使用。錯誤地使用
發表于 01-30 10:58
靜態變量、全局變量和局部變量
域。全局變量只需在一個源文件中定義,就可以作用于所有的源文件。當然,其他不包含全局變量定義的源文件需要用extern關鍵字再次聲明這個全局變量。2>靜態局部變量具有
發表于 06-20 09:52
【原創分享】STM32 C語言全局變量和局部變量
作者:張角老師(張飛實戰電子高級工程師)大家好,我們今天來探討一下C語言的全局變量和局部變量。如果我們想徹底搞清楚這兩個概念,我們必須回答幾個問題:第一,C語言為什么要區分變量的作用域,或者說做出
發表于 06-17 11:18
static的全局變量與局部變量的使用,看完你就懂了
慮使用 static)。
2.2 靜態變量與普通變量靜態全局變量有以下特點:
(1)靜態變量都在全局數據區分配內存,包括后面將要提到的靜態
發表于 06-27 08:54
LABVIEW初級教程之局部變量與全局變量的示例程序合集免費下載
本文檔的主要內容詳細介紹的是LABVIEW初級教程之局部變量與全局變量的示例程序合集免費下載
發表于 01-16 10:23
?34次下載
C語言中局部變量和全局變量
全局變量也稱為外部變量,它是在函數外部定義的變量。它不屬于哪一個函數,它屬于一個源程序文件。其作用域是整個源程序。在函數中使用全局變量,一般應作全局
評論