问题
单项选择题
设有如下通用过程:
Public Function f(x As Integer)
Dim y As Integer
x=20
y=2
f=x * y
End Function
在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Static x As Integer
x=10
y=5
y=f(x)
Print x; y
End Sub
程序运行后,如果单击命令按钮,则在窗体上显示的内容是( )。
A) 10 5
B) 20 40
C) 20 5 D) 10 40
答案
参考答案:B
解析: 过程f中形参变量x没有指定传递方式,则默认按地址传递,会影响实参值。而变量y在按钮事件过程和f过程中都是局部变量只在本过程中起作用。因此执行y=f(x)后,x值在过程中被改变为20,而y被赋为过程返回值40。因此程序窗体上会显示20和40。