亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        VB調用過程中的參數傳遞解析

        2015-04-29 00:00:00劉新穎
        學周刊·下旬刊 2015年2期

        摘要:VB編程中參數過程的調用是重點和難點,特別是調用過程中的參數傳遞,學生難于理解和掌握,本文結合實例,深入分析參數傳遞中的兩種方式,并對兩種方式進行舉例說明,對于學生理解和掌握參數傳遞的過程十分重要。

        關鍵詞:過程調用 參數傳遞

        使用Visual Basic(簡稱VB)編寫程序,除了需要進行界面設計,還需要大量的程序代碼的編寫,為了便于程序的調試與維護、提高代碼的利用率,就需要將程序分為若干模塊和子模塊,并采用過程的調用來實現。在VB教學工作中,過程調用中的參數傳遞往往是學生最難理解和掌握的知識點,本文結合實例對參數傳遞的兩種方式進行深入的分析和說明,方便學生的理解和使用。

        一、參數的概念

        參數是過程與外界通信的媒介,有與外層程序互相傳遞消息的使命。參數分為形式參數和實在參數。

        1.形式參數是指出現在過程中參數,簡稱形參。實在參數是指調用過程時使用的參數,簡稱實參。

        2.實在參數與形式參數表中的參數名可以相同,也可以不同。但實參表中的參數類型與形參表中的數據類型必須一致。

        3.實在參數與形式參數發(fā)生數據傳遞時,數據是一一對應的。即實參表中的第一個參數必須只能傳給形參表中的第一個參數。

        二、參數傳遞的方式

        在VB中,根據參數的值是否能回傳,也就是說,根據運算后的形式參數值能否再傳遞給與它相應的實在參數,而把參數傳遞分為兩種方式:按值傳遞和按地址傳遞。

        1.按值傳遞。這種傳遞方式只能是在調用過程時,主程序將值傳遞給形參,而不能在運算后形參的值再傳遞回來給實參。也就是說,這種傳遞方式只能是單向的,即使形參的值發(fā)生了改變,也不會影響到調用該過程的語句中實參的值。

        例如:

        Private Sub Form_Activate()

        Const A%=5

        Print 5,A,3+5

        Call exam1(5,A,3+5)

        Print 5,A,3+5

        End Sub

        Private Sub exam1(x,y,z)

        X=x*2

        Y=y+3

        Z=z^2

        Print x,y,z

        End Sub

        主程序的第一條語句,是在聲明符號常量,即讓A的值在此程序中永遠等于5。此時執(zhí)行到第二條語句時,在窗體中輸出常量值5、符號常量值5、和表達式3+5的值,即8。第三條語句時,實現了過程調用中的參數傳遞,即把常量5傳遞給了子程序exam1中的x,符號常量A的值5傳遞給了子程序中的y,把表達式3+5的值8傳遞給了子程序的Z。轉到子程序后,按照子程序的過程,再分別x、y、z的新值,這時,執(zhí)行子程序中的Print x,y,z,即輸出新的x、y、z的值。執(zhí)行到子程序中的End Sub語句后,返回主程序的第四條語句。

        由于在剛剛進行的參數傳遞的過程中,主程序中的實參均是常量(常量值不受任何外界影響,永遠都不會變化),所以過程在被調用時對形參的任何改變都不會影響到實參,這段主程序中的實參并沒有因為子程序而發(fā)生任何的變化。

        由此分析,此程序的運行結果為:5 5 8

        10 8 64

        5 5 8

        此過程即為參數傳遞中的按值傳遞。

        2.按地址傳遞。這種傳遞方式不是將實在參數的值傳遞給了形式參數,而是將存放實在參數值的內存中的存儲單元地址一起傳遞給了形參,此時形參和實參具有相同的存儲單元地址,也就是說,如果一旦形參的值發(fā)生改變,實參的值也會隨之一起變化,并且實參會將改變后的值帶回到調用該過程的程序里面,這種參數傳遞方式是雙向的。

        例如:

        Private Sub Form_Activate()

        Dim a%,b%,c%

        A=5:b=5:c=8

        Print a,b,c

        Call exam (a,b,c)

        Print a,b,c

        End sub

        Private Sub exam(x,y,z)

        X=x*2

        Y=y+3

        Z=z^2

        End sub

        此例題與上一例題有稍許改動,但意義和執(zhí)行過程就有了很大的變化。

        主程序中的第一條語句,定義了三個變量:a、b、c。第二條語句分別給a、b、c賦值。執(zhí)行到第四條語句時,調用子程序exam,在調用的過程中,將a的值傳遞給了子程序中的形參x,將b的值給了形參y,將c的值傳遞給形參Z。由于實在參數在傳遞時為變量,所以傳遞的過程中,實參不僅將值傳遞給了形參,并且將存儲它們的地址單元一起傳遞了過去,即此時實參a與形參x共用一個存儲地址單元。同理,實參b與形參y共用一個地址單元,實參c與形參z共用同一地址。調用子程序后,子程序中分別對x、y、z的值進行了新的計算和賦值,此時,與它們同用一個地址單元的實參a、b、c也會隨之發(fā)生變化。

        由此分析,此程序的運行結果為:5 5 8

        10 8 64

        10 8 64

        此過程實現了參數的按地址傳遞。

        三、調用過程中的參數傳遞總結

        在參數傳遞的過程中,實在參數可以是常量、表達式或者變量,而形式參數作為接收數據的一方,只能是以變量的方式出現。如果實在參數是常量或表達式時,系統(tǒng)默認為按值傳遞參數,一旦實在參數為變量時,則系統(tǒng)自動默認采用按地址傳遞。也就是說,在按地址傳遞參數時,實在參數必須是變量,常量或表達式是無法進行地址傳遞的,因為它們的值永遠固定,無法因為子程序中形參值的改變而改變。

        (責編 金 東)

        欧美人与动性xxxxx杂性| 热热久久超碰精品中文字幕| 日本免费播放一区二区| 亚洲综合网国产精品一区| 欧美怡红院免费全部视频| 国产片AV在线永久免费观看| 人妻少妇精品视频中文字幕国语| 不卡一本av天堂专区| 久久精品国产精油按摩| 国产极品女主播国产区| 99精品久久精品一区| 欧洲美熟女乱av亚洲一区| 好看的日韩精品视频在线| 人妻体内射精一区二区三四| 精品乱码卡1卡2卡3免费开放 | 色五月丁香五月综合五月4438| 亚洲电影一区二区三区 | 97福利视频| 白白色发布视频在线播放| 亚洲αv在线精品糸列| 无码综合天天久久综合网| 一区二区三区福利在线视频| 看一区二区日本视频免费| 国产极品女主播国产区| 亚洲国产理论片在线播放| 日韩精品首页在线观看| 国产女主播一区二区三区| 无码吃奶揉捏奶头高潮视频| 国产激情在观看| 青青草免费观看视频免费| 夜夜高潮夜夜爽国产伦精品| 国产女精品视频网站免费| 青青手机在线视频观看| 91精品国产无码在线观看| 一道之本加勒比热东京| 无码人妻人妻经典| 免费jjzz在线播放国产| 一区=区三区国产视频| 亚洲精品国精品久久99热| 国产精品香蕉在线观看| 啪啪视频免费看一区二区|