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

admin2018-10-15  29

问题 窗体上有一个名称为Commandl的命令按钮,并有如下程序代码:
Private Sub Commandl_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://jikaoti.com/ti/bym0FFFM
0

最新回复(0)