关于一条vb题目
Dim x As Integer, y As Integer
Private Sub form_click()
Dim a As Integer, b As Integer
a = 5: b = 3
Call sub1(a, b)
Print a, b
Print x, y
End Sub
Private Sub sub1(ByVal m As Integer, n As Integer)
Dim y As Integer
x = m + n: y = m - n
m = fun1(x, y)
n = fun1(y, x)
End Sub
Private Function fun1(a As Integer, b As Integer) As Integer
x = a + b: y = a - b
Print x, y
fun1 = x + y
End Function
我笔算出来第一行显示的是 10 6
为什么正确答案是 10 8
请高手解答,谢!
参考答案:没弄明白是怎么回事.我试了下
Private Function fun1(a As Integer, b As Integer) As Integer
"这里的a=8"x = a + b"这里的a=10": y = a - b
Print x, y
fun1 = x + y
End Function
没对a操作 ,值却变了.
但把funl的参数传递改为byval a as integer后问题解决.