VB 参数传递:按值传递和按地址传递

有两问题:问题一OptionExplicitDimaAsLongSubs(ByRefb)b=b+1EndSubPrivateSubForm_Click()a=8s(a)P... 有两问题:
问题一
Option Explicit
Dim a As Long
Sub s(ByRef b)
b = b + 1
End Sub

Private Sub Form_Click()
a = 8
s (a)
Print a
End Sub
输出结果为什么是“8”,而不是“9”。

问题二
参数传递的数量是不是只能一个?
比如:dim s(byval a,byref b)可以吗?
如果不可以那要进行多个值的传递该怎么办。
展开
 我来答
百度网友740e59274
2010-05-16 · TA获得超过783个赞
知道小有建树答主
回答量:549
采纳率:0%
帮助的人:0
展开全部
问题一
参数按地址传递,输出结果为什么是“8”,而不是“9”。因为变量a没作为参数传递。改s (a)为s a 或Print (a)试试。

问题二
参数传递的数量不是只能一个
比如: s(byval a,byref b)可以的
百度网友39b91c2fb
2010-05-16 · TA获得超过518个赞
知道小有建树答主
回答量:991
采纳率:0%
帮助的人:668万
展开全部
可以传递多个参数。 俺值传递的参数只是在过程中创建一个副本参与运算,不改变参数本身,如果你要输出的结果是9就应该按地址传递。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式