永发信息网

vb这道题里面的a在第二,三次调用函数是怎么变为了3 谁能解释下?

答案:2  悬赏:40  手机版
解决时间 2021-03-29 16:17
vb这道题里面的a在第二,三次调用函数是怎么变为了3 谁能解释下?
最佳答案
函数fun_s(a As Integer) 中参数a是默认按地址传递参数值,
VB函数参数有两种传递方式,
一种按值传递Byval,函数中参数值改变不会回传给主调函数或过程,
一种按地址传递Byref,函数中参数值改变会回传给主调函数或过程,
默认按地址传递Byref,如果要按值传递,需要在参数前加Byval。
本题中fun_s(a As Integer),a按地址传递参数,
第一次调用函数,
a = a + 1=2+1=3,
b = b + 1=0+1=1,
c = c + 1=0+1=1,
fun_s = a + b + c=5;
a的值被改变为3。
第二次调用函数,
a = a + 1=3+1=4,
b = b + 1=0+1=1,
c = c + 1=1+1=2,
fun_s = a + b + c=7;
a的值被改变为4。
第三次调用函数,
a = a + 1=4+1=5,
b = b + 1=0+1=1,
c = c + 1=2+1=3,
fun_s = a + b + c=9。
故选择C项
全部回答
第一次调用函数后 a的值为3
第二次调用函数后 a的值为4
第三次调用函数后 a的值为5
因为vb自定义函数参数默认是传址的,如果你把函数写成
Function fun_s(Byval a As Integer) As Integer
那a的值就会保持为2
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
1/1+(2/1-1/2)+(3/1-2
多选题下列说法中正确的是A.做简谐运动的物体
请列举几个我国比较流行的剧种及代表作
谢娜产后首次复出 谢娜什么时候回大本营
连续5天了每天和男朋友做6次爱是性瘾吗?
我家有好多红薯,秋天蒸完红薯晾晒不了,谁能
济南的幼教中大家感觉景之幼教怎么样啊,亲人
刚入手 Aj11 72-10 请问该如何清洁保养?
中央空调三相电14台135kW的要用多大电缆
洛神这个游戏费钱吗?
如何用校音器用二胡的52弦
王杰一共发的多少张专辑?
一()名声 填量词/--------------/
After several days of social activities, I
abac开心的词语
推荐资讯
鱼嘴烂了怎么办
我的派对地址在什么地方,我要处理点事!
什么样的材料耐高温绝热保温性能好的?
旅游代理商的概念
德语你好怎么说
应不应该继续呢??
身份征可以贷款吗
谜语:只有另行高就(八笔字一)
描写秋天三字词语有哪些?
梦幻龙族20级转职在哪里转
我很肥,112斤,怎样才能减肥20斤
电动车控制器有少于六个管子的吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?