asp自定义函数
functionabc(n)n=n+1endfunctionfunctionabcd(c)c=c+n+1abcd=c+1endfunctionk=5response.wr...
function abc(n)
n=n+1
end function
function abcd(c)
c=c+n+1
abcd=c+1
end function
k=5
response.write k & ":" & abc(k) & ":" & abcd(k)
%>
运行结果是5::8
如果把输出改成response.write k & ":" & abc(5) & ":" & abcd(k)
运行结果是5::7
谁能告诉我为什么? 展开
n=n+1
end function
function abcd(c)
c=c+n+1
abcd=c+1
end function
k=5
response.write k & ":" & abc(k) & ":" & abcd(k)
%>
运行结果是5::8
如果把输出改成response.write k & ":" & abc(5) & ":" & abcd(k)
运行结果是5::7
谁能告诉我为什么? 展开
1个回答
展开全部
response.write k & ":" & abc(k) & ":" & abcd(k)
------------------------------------------
abc(k) 这一步执行的时候 k的值变成了 6
因为VBS参数默认是byref
abcd(k)
function abcd(c)
c=c+n+1 ' c=6+null+1
abcd=c+1 'abcd= 7+1
end function
-------------------------------
把 function abc(n) 改成 function abc(byval n)
执行一次,你能发现两种调用方式结果都是 5::7
因为调用 abc(k),k的值没被改变。
------------------------------------------
abc(k) 这一步执行的时候 k的值变成了 6
因为VBS参数默认是byref
abcd(k)
function abcd(c)
c=c+n+1 ' c=6+null+1
abcd=c+1 'abcd= 7+1
end function
-------------------------------
把 function abc(n) 改成 function abc(byval n)
执行一次,你能发现两种调用方式结果都是 5::7
因为调用 abc(k),k的值没被改变。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询