请教一道关于vb的题目,高职的
Dim a As Integer, b as integer, c as integerPrivate Sub Command1_Click()
a = 2: b = 3: c = 4
Call sub1(1, b, c)
z = a + b + c
Print z
Print a, b, c
End Sub
Sub sub1(a, x, ByVal y)
a = a + 2: b = b + 2: c = c + 2
x = a + b: y = b + c
End Sub
上机运行后,最后的结果是16,a,b,c值分别为2,8,6
我的理解是:题目中a,b,c都定义成了窗体级变量,所以a=1+2=3,b=x=3+5=8,c=4+2=6
我想问问,为什么a的值不是3
既然结果中a=2,那么为什么c也是按值传递的,c=4才对呀?
求大家能帮我想想,解决我心中的困惑,明天就要考试了,万分感谢!