Re: [VB6 ] 計算機

看板Visual_Basic作者 (昨日之死)時間19年前 (2005/06/10 21:30), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串20/51 (看更多)
※ 引述《fumizuki (小獅子)》之銘言: : ※ 引述《TrueFeeling (昨日之死)》之銘言: : : Eval分成Eval(op1)和Eval(op2),但是如果op2裡面還有運算子的時候, : : 1.為什麼Eval能傳出值? : Function就是要做這用途的... : : 2.離開的話,剩下的運算子好像還沒處理 : 一個離開,還有其它相同的函數還在執行... 你是說,Eval分成Eval(op1)和Eval(op2) 然後每一個Eval又可以分成Eval(op1)和Eval(op2)這樣嗎? 以下面這個為例 p = InStr(s, "+") If p > 0 Then GoSub SplitProc: Eval = Eval(op1) + Eval(op2): GoTo EndProc 如果Eval分成Eval(op1)和Eval(op2)但是如果跳出方程式的話,不是就結束了嗎 GoSub SplitProc是重新跑方程式 GoTo EndProc是結束方程式 如果我上面的判斷沒錯的話,GoSub SplitProc和GoTo EndProc是衝突的 可是卻同時進行?讓我覺得很矛盾 : : 可是,InStr 的第一個參數,指定要從第幾個字元開始尋找 : : 那個參數要有一個確定的數字的樣子,所以不懂為什麼可以用p : : 而且p也用來作為InStr函數的傳出值,所以我這邊很混亂 : 沒人說不能用變數啊... : 函數的每一個參數本來就是個變數... : 就算是常數傳進去,在函數的本體還是以變數在看待 不好意思,我天資駑鈍,還是不懂><(原諒我吧orz) 可是p如果是變數的話,電腦要從第幾個字元開始找起呢 還是說p是承接上面 p=2 Else p=1 的p : : 這邊有一個問題: : : 就是如果一開始直接用Val(s)取代Eval的話,我覺得這樣應該比較直接 : : 所以不懂這邊Eval的用意 : 上面說了,s必須是一個數值,才能夠進行轉換,否則得到的數會是零。 : Eval 的目地就是要把運算子與運算元分離,Val()並不會幫你做計算的工作... -- 少年讀書,如隙中窺月; 中年讀書,如庭中望月; 老年讀書,如臺上玩月。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.162.90.149 ※ 編輯: TrueFeeling 來自: 218.162.90.149 (06/11 03:20)
文章代碼(AID): #12gPNSem (Visual_Basic)
討論串 (同標題文章)
文章代碼(AID): #12gPNSem (Visual_Basic)