请再指教asp的function过程?

来源:百度知道 编辑:UC知道 时间:2024/05/09 17:09:23
sub过程调用完就结结束了,
funtion有返回值,调用完不就也结束了吗?
两个看不出有什么不一样的啊
返回值是哪个?不懂,我猜是sum对吗
还有在过程外你写a=1,b=2
c=sum(a,b)我看不懂啊
还有sum(1,2)怎么等于3了,,,这里没有加号怎么自己就
加起来了

楼上的代码写的不规范
我来说说吧
sub是过程,也就是处理某件事情的过程,处理完成后,什么也不返回。
而Function函数呢,他也是处理事情的过程,但是呢,他处理完后可以返回一个值。
这样:
function sum(a as long,b as long )as long
sum=a+b
end function
这样才是一个完整的函数

sub sums(a as long,b as long)
Dim sum as long
sum=a+b
end sub
这就是一个过程

由上面的函数看,当调用函数的时候,传入了两个值,然后呢sum=a+b,sum就是这个函数的名称,当在函数过程里的时候,函数的名称也是一个变量,所以在括号后面还有一个as long,也就是说函数的返回值是long型。
当我们调用函数的时候:
Dim c as long
c=sum(1,2)
函数内部把1和2相加,然后返回1和2的值,然后把这个值给c变更。

再看看上面的过程
当我们调用过程的时候
sums(1,2)
在内部它把1和2相加了,但是他没有返回值,所以过程只是处理事情的,而不能返回一个值。
所以当我们要c=sums(1,2)这样就不可以,因为过程没有返回值。
就说这么多吧

刚才又看了看楼主的问题补充,我再补充一下
Q1:返回值是哪个?不懂,我猜是sum对吗
A1:这个问题我前面说过了,因为函数就相当于一个变量。

Q2:还有在过程外你写a=1,b=2
c=sum(a,b)我看不懂啊
A2:上面的那个回答者,其实应该声明一下a b变量:
Dim a as long
Dim b as long
a=1
b=2
然后调用sum函数,在括号里的就是调用这个函数传入的参数,当函数执行的时候,函数就可以用这两个变量来做一些运算等。
因为前面已经声明了a,b变量且a=1,b=