1樓:老牛帶你看奇聞
這是因為在窗體裡定義了a為全域性變數,但是在command1中又定義了一個a為區域性變數,所以在command1的過程中就把全域性變數的a給遮蔽了。而在fun1過程中,a還代表的是全域性變數的a呼叫fun1的時候把a=1.2,b=3傳給了x,y.
這是地址傳遞。其實是把區域性變數a和b的地址傳給了x,y所以計算完後。改變的是區域性變數a,b的值。
在 for迴圈裡迴圈三次。因為x初值為1.2所以三次後為9.6.
這裡的 a是全域性變數的a初值沒有設定所以是0加三次1後為3所結果是3和9.6
這裡要學的是,如果定義了全域性變數。又在過程或函式裡定義了同明的變數,那麼該區域性變數的值就會遮蔽全域性變數。
2樓:匿名使用者
print fun1(a, b)
print a
你編寫的函式 private function fun1(x as single, y as integer) as integer
其中的x y 在呼叫時使用的變數是a,b 這個是按變數在記憶體的地址傳參
在函式中如果x 和 a 指向是同一個地址 所以a,b 改變了
如果改成private function fun1(byval x as single,byval y as integer) as integer
指明引數傳遞是傳值 呼叫函式後a 值不變
private function fun1(x as single, y as integer) as integer
執行結果是
39.6
private function fun1(byval x as single,byval y as integer) as integer
執行結果是
31.2
可以參考
上面寫的詳細
3樓:
上面的a是個變數 下面的是定值 也就是在你得計算範圍
簡單的vb問題,關於開啟檔案,一個簡單的vb問題,關於開啟檔案
正常的語法不是應該這樣嗎?if dk.filename then 如果路徑為實值 open dk.filename for output as 1 則開啟 print 1,txt.text 我把文字框改名為txt了 close 1 end if 你確定dk.filename 是一個正常的完整的檔案路...
vb的問題,一個vb的問題
開啟一個視窗 使用 shellexecute api 函式能夠實現自動登入,具體宣告請你參考一下 msdn 或者使用 vb 自帶的 api 檢視器來貼上宣告 用法如下 shellexecute form1.hwnd,open 名稱 sw restore 將這些 寫進標籤的 click 事件中就可以了...
求VB程式的寫法,求一個VB程式的寫法
清屏,什麼意思啊,用cls是不能清控制元件的哦,只能清程式執行時輸出到窗體上的資料。可以這樣寫 再加一個退出時顯示的窗體form2,上面就一行字,或者可以裝飾得好看一點,背景放一張 什麼的,謝謝使用!就放在label標籤裡,再加一個按扭,單擊事件裡就一個 end命令。private sub cmde...