注意:
F按值傳遞參數(shù)
形參和實參的類型不一定要統(tǒng)一,VB自動進行數(shù)據(jù)的轉(zhuǎn)換。
–例如:Private Sub Form_Click()
Dim a As String : a = 2
Call sub1(a)
Print a
End Sub
Private Sub sub1(ByVal b As Integer)
b = b + 1 : Print b
End Sub
F按地址傳遞參數(shù)
–當(dāng)實參是變量時:如果形參規(guī)定了類型,則實參必須跟形參保持一致
如果形參沒有規(guī)定類型,則VB按要求進行數(shù)據(jù)類型轉(zhuǎn)換
–當(dāng)實參是常量或表達式時:
VB自動用“按值傳遞”的方式進行處理,如果數(shù)據(jù)類型不統(tǒng)一,VB自動進行數(shù)據(jù)轉(zhuǎn)換
例如:1、在應(yīng)用程序中用“Private function Fun(X as integer,Y as single)”定義了函數(shù)Fun。調(diào)用函數(shù)Fun的過程中的變量I、J均為Integer型,能正確引用函數(shù)Fun的是( )
A.Fun(I,J) B.Call Fun(I,3.56) C.Fun(3.14,234) D.Fun("245","231.5")
2.程序中的不同過程之間,不能通過_________進行數(shù)據(jù)傳遞。
、偃肿兞 ②窗體或模塊級變量 ③形參與實參結(jié)合 ④靜態(tài)變量
A. ①②④ B. ①②③ C.②④ D.④
二級考試必考題型:(課后習(xí)題)
傳值 傳地址 Static變量 同名變量 遞歸過程
例如:
1、以下有關(guān)變量作用域的說法中,錯誤的是( )
A. 只有在標(biāo)準(zhǔn)模塊中用public語句說明的變量才是全局變量
B. 在過程中不能使用public語句說明全局變量
C. 在標(biāo)準(zhǔn)模塊的通用聲明處可用private語句說明模塊級變量
D. 在窗體的通用聲明處可用private語句說明窗體級變量
2.一個名為frm1的窗體,在窗體通用聲明處和過程sub1中分別定義:public k as integer、dim k as integer如何在sub1中訪問全局變量k( )
A.frm1.k B.form.k C.form1.k D.k
例:閱讀程序,給出輸出結(jié)果:
(1)字符串處理(數(shù)組參數(shù))
Option Base 1
Private Sub Form_Click()
Dim st As String, char As String
Dim data() As String, i As Integer, j As Integer
st = "10281018123811181038"
For i = 1 To Len(st)
If Mid(st, i, 1) <> "8" Then
char = char & Mid(st, i, 1)
Else
j = j + 1
ReDim Preserve data(j)
data(j) = char
char = ""
End If
Next i
Call conver(data, char)
Print char
End Sub
Private Sub conver(a() As String, ch As String)
Dim i As Integer, j As Integer
Dim n As Integer, dec As Integer
For i = 1 To UBound(a)
n = Len(a(i))
For j = 1 To n
dec = dec + Val(Mid(a(i), j, 1) * 8 ^ (n - j))
Next j
ch = ch & Chr(dec)
dec = 0
Next i
End Sub
相關(guān)推薦:2011年計算機等級考試二級VB基礎(chǔ)教程匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |