
form1.fun
i,(j)
'(也就是fun和i之间是有个空格的)
这个最后的(j)是为了让j参与一次虚拟的四则运算(这里括号()是作为运算符来处理的),这样运算结果vb会自动根据fun过程的参数类型(即single)进行转换。如果不加(),则vb会提示你类型不符(因为j是integer,不是single)。
具有同样效果的处理方式还有:
form1.fun
i,j+0
原理同样
其实标准的做法是要显式进行格式转换:
form1.fun
i,csng(j)
1、打开VB6.0,新建一个工程,在窗体中添加一个命令按钮,caption分别改为“调用函数”,将窗体Form1的caption属性改为“VB6.0自定义函数”,将界面设置成下图:
2、双击窗体Form1,进入代码编辑窗口,单击左侧下拉三角形,选择通用。
3、在通用段输入如下代码:
Public Sub F1(n%, ByVal m%)
n = n Mod 10
m = m \ 10
End Sub
并将Form_Load事件删除。
以上代码就定义了函数F1,其中包括两个参数,类型均是整型,%表示 短整型,Byval表明了值传递方式,表示值传递,与地址传递相对应。这也是默认的传递方式。
4、双击“调用函数”命令按钮,进入代码编辑窗口,输入如下代码:
Dim x%, y%
x = 12: y = 34
Call F1(x, y)
Print x, y
yongcall进行函数的调用,参数与自定义函数中参数一一对应。
5、然后关闭代码窗口,按下F5运行程序,单击“调用函数”命令按钮,在窗体中打印输出2 34,可以自己想下为什么是这个结果,这个结果和函数的值传递方式有关,
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)