vb练习的一道题1 谢谢
在窗体上加一命令按钮,其名称为Command1,然后编写以下程序代码:PrivateSubCommand1_Click()Dima,da=10:b=20Callmult(...
在窗体上加一命令按钮,其名称为Command1,然后编写以下程序代码:
Private Sub Command1_Click()
Dim a, d
a=10: b =20
Call mult((a), b)
Print a; b
End Sub
Private Sub mult(ByRef x As Variant, y As Variant)
x=x * 2
y= y * 3
End Sub
在程序运行过程中,单击命令按钮Command1,程序的输出结果为()
(A) 10 20 (B) 20 60 (C) 10 60 (D) 20 20
请问,结果为什么不是B,而是C
谢谢,稍微解释一下。 展开
Private Sub Command1_Click()
Dim a, d
a=10: b =20
Call mult((a), b)
Print a; b
End Sub
Private Sub mult(ByRef x As Variant, y As Variant)
x=x * 2
y= y * 3
End Sub
在程序运行过程中,单击命令按钮Command1,程序的输出结果为()
(A) 10 20 (B) 20 60 (C) 10 60 (D) 20 20
请问,结果为什么不是B,而是C
谢谢,稍微解释一下。 展开
3个回答
展开全部
Private Sub mult(ByRef x As Variant, y As Variant)
x=x * 2
y= y * 3
End Sub
写错
应该是
Private Sub mult(ByVal x As Variant, y As Variant)
x=x * 2
y= y * 3
End Sub
参数传递默认为传址(ByRef)
传址会改变形参的值,传值不会
x=x * 2
y= y * 3
End Sub
写错
应该是
Private Sub mult(ByVal x As Variant, y As Variant)
x=x * 2
y= y * 3
End Sub
参数传递默认为传址(ByRef)
传址会改变形参的值,传值不会
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Call mult((a), b) 中"括号"()像运算符号一样会,会对他里面的东西进行进行计算, 把数值返回. 所以a无法完整ByRef 按值调用
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在这个例子中 acd1024 的说法好像更确切点吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询