注册 登录
编程论坛 ASP技术论坛

求助FUNCTION 的形参问题

jsun319 发布于 2008-07-03 11:42, 844 次点击
<%
function abc(m)
  m=m+1
  n=n+1
  abc=n+m
response.write("n="&n&"<br>")
response.write("m="&m&"<br>")
end function
n=5
response.write n&":"&abc(n)
%>
以上运行结果为m=7 n=7 5:14,请问为什么m和N的值为7而不是6呢?
3 回复
#2
icecool2008-07-03 14:47
你像下面这样看一下就清楚了:

<%
function abc(m)


response.write("0.<br>")
response.write("n="&n&"<br>")
response.write("m="&n&"<br><br>")



m=m+1                                '此时m=n,m加1时,n也加是
response.write("1.<br>")
response.write("n="&n&"<br>")
response.write("m="&n&"<br><br>")

n=n+1                                '此时n加1,m也加1      
response.write("2.<br>")
response.write("n="&n&"<br>")
response.write("m="&n&"<br><br>")


  abc=n+m
response.write("3.<br>")
response.write("n="&n&"<br>")
response.write("m="&m&"<br><br>")
end function
n=5
response.write n&":"&abc(n)&"<br>"

%>
#3
zhangyao32872008-07-04 17:05
这里function也可以继承n=5么?
#4
multiple19022008-07-04 22:37
你这个function里的m是传值方式(ByVal),将原来的m参数复制一份传到function内部,内部修改后原来的m不会变。
涉及到编程的基础知识。
1