窗体上有一个名称为Commandl的命令按钮,并有如下程序代码: Private Sub Command 1 Click() Static a a=1:b=2:c=3 Call f(a,b,c) Print a;b;c End Sub Sub f(ByVa

admin2019-06-11  20

问题 窗体上有一个名称为Commandl的命令按钮,并有如下程序代码:
Private Sub Command 1 Click()
Static a
a=1:b=2:c=3
Call f(a,b,c)
Print a;b;c
End Sub
Sub f(ByVal x,ByRefy,z)
x=x+1:y=y+1:z=z+1
End Sub
运行程序,单击命令按钮,窗体上显示的是

选项 A、1 3 3
B、1 3 4
C、2 3 3
D、2 3 4

答案B

解析 在Visual Basic中调用过程时,参数有两种传递形式:按值传递(Byval)和按址传递(Byref),默认为按址传递。其中,当参数按址传递时,如果在引用该参数的过程中改变了形参的值,同时也就改变了传递参数时实参变量的值。本题中f的参数x是按值传递的,y和z是按地址传递的,因此在f中对x的改变不会影响实参a,对y和z的操作会影响实参b和c。
转载请注明原文地址:https://kaotiyun.com/show/VRUp777K
0

最新回复(0)