爱问知识人 爱问教育 医院库

VBA

首页

VBA

(33)在窗体上有一个命令按钮Commandl,编写事件代码如下:
  Private Sub Command1_Click()
  Dim x As Integer, y As Integer
  x = 12: y = 32
  Call Proc(x, y)
  Debug.Print x; y
  End Sub
  Public Sub Proc(n As Integer, ByVal m As Integer)
  n = n Mod 10
  m = m Mod 10
  End Sub
  打开窗体运行后,单击命令按钮,立即窗口上输出的结果是2和32,为什么不是2和2

提交回答
好评回答
  • 2010-09-19 14:19:52
    还是那个传地址和传数值的关系,我上次让你去查阅相关资料的,你没有看吧。我再给你解释一下:
    VB中实参和形参的传递方式一共有两种:传地址和传数值,默认情况下是传地址(不写就是默认,即Byref,传地址),Byval就是传数据的意思。如果是传地址,则实参传过去以后,在函数过程中,只要这个变量有变化,那么这个实参也就跟着变化了;而传数值只是实参在传递过程中将变量的一个拷贝作为形参,而不是真正的实参传过去,所以,传数值时,这个变量的值并没有真正改变,这也就是m为什么还是32的原因。明白了吗?

    _***

    2010-09-19 14:19:52

类似问题

换一换
  • VB 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新资料 推荐信息 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 171-190
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):