VB6.0中過程級變數和窗體級變數的區別與使用?

所有程式語言都會涉及到變數,這是程式設計的基礎。接下來就具體說明VB6.0中過程級變數和窗體級變數的區別與使用:

工具/原料

VB6.0

計算機(WIN7系統)

方法/步驟

開啟VB6.0,新建一個工程,在窗體中新增兩個命令按鈕,caption分別改為“生成”和“求平均值”,新增一個標籤改名為Lbl1,新增一個文字框,將介面設定成下圖:

VB6.0中過程級變數和窗體級變數的區別與使用

雙擊生成命令按鈕,進入程式碼編輯視窗,輸入如下程式碼:

Dim a As Integer, i As Integer

Randomize

For i = 1 To 10

a = Int(Rnd * 90) + 10

Lbl1.Caption = Lbl1.Caption & " " & a

Sum = Sum + a

Next i

VB6.0中過程級變數和窗體級變數的區別與使用

雙擊求平均值按鈕,輸入如下程式碼:

Text1.Text = "平均值是:" & Sum / 10

VB6.0中過程級變數和窗體級變數的區別與使用

關閉程式碼視窗,按下F5執行程式,單擊生成命令按鈕,標籤上生成10個隨機數,如圖:

VB6.0中過程級變數和窗體級變數的區別與使用

按下求平均值命令按鈕,求取10個數的平均值,得到結果如圖:

VB6.0中過程級變數和窗體級變數的區別與使用

求出的平均值是0,顯然不對,但是分析演算法都沒有錯。錯誤出在變數的傳遞上,生成命令按鈕中的sum變數只在該命令按鈕中有用,為過程級變數,到了求平均值命令按鈕中無效,系統自動給sum賦值為0。所以求的結果是0。

VB6.0中過程級變數和窗體級變數的區別與使用

進入程式碼編輯視窗,在通用程式碼段(左側下拉三角形進行選擇)輸入:

Dim Sum As Integer '定義窗體級變數

VB6.0中過程級變數和窗體級變數的區別與使用

然後再執行程式,得出平均值結果如圖:平均值是45.9,為正確結果。通過將Sum變數改為窗體級變數,得到了預期效果。

VB6.0中過程級變數和窗體級變數的區別與使用

注意事項

窗體級變數:整個Form窗體內都可以使用,通常在通用程式碼段進行變數宣告。

過程級變數:在過程、或者函式中定義的變數。

相關問題答案