关于VB goto 和if else的有关问题
关于VB goto 和if else的问题
If Not mode Then
COM1.InputLen = 14
COM1.InBufferCount = 0
COM1.Output = outData
tl = timeGetTime
...........
Else
toNext:
COM1.InputLen = 1
Do Until COM1.InBufferCount > 13
DoEvents
Sleep 2
Loop
…………
End If
Else 后面没有什么东西了,直接跟着toNext: ,难道else 之后执行的就是toNext: 里面的程序吗? 不是只有goto才能进入到toNext:里吗?
看清我的提问:我是问,为什么 Else 后面没有东西了而是跟着toNext: 然后才是end if 难道else之后直接执行toNext:里的内容?
下面还有一段程序,同样是困惑:如果说chkagain:只有goto指过去才能执行,那么可以看到下面的程序,goto 在chkagain:之下,也就是说,进去了才有可能执行到:If SetWenda Then GoTo chkagain 然后返回来chkagain:,所以我要问的是,是不是程序执行到chkagain:处,会当做一般的程序,继续执行chkagain:以下的内容,然后如果有goto 指向过来,也可以直接跳过来?
If COM1.PortOpen = True Then COM1.PortOpen = False
comSetting = Combo1.Text & ",n,8,1 "
COM1.Settings = comSetting
COM1.CommPort = Val(Combo1)
COM1.InputLen = 14
COM1.PortOpen = True
chkagain: COM1.InBufferCount = 0
Sleep 150 '延时150ms
If COM1.InBufferCount > 10 Then '>10说明开始有数据返回
If SetWenda Then GoTo chkagain
If False Then
Label1 = "BROADCAST "
ExBtn3.Enabled = False
bOnline = True
mode = True
' ExBtn5.Enabled = False
ExBtn6.Enabled = False
ExBtn7.Enabled = False
ExBtn9.Enabled = False
' ExBtn12.Enabled = False
If Not mode Then
COM1.InputLen = 14
COM1.InBufferCount = 0
COM1.Output = outData
tl = timeGetTime
...........
Else
toNext:
COM1.InputLen = 1
Do Until COM1.InBufferCount > 13
DoEvents
Sleep 2
Loop
…………
End If
Else 后面没有什么东西了,直接跟着toNext: ,难道else 之后执行的就是toNext: 里面的程序吗? 不是只有goto才能进入到toNext:里吗?
看清我的提问:我是问,为什么 Else 后面没有东西了而是跟着toNext: 然后才是end if 难道else之后直接执行toNext:里的内容?
下面还有一段程序,同样是困惑:如果说chkagain:只有goto指过去才能执行,那么可以看到下面的程序,goto 在chkagain:之下,也就是说,进去了才有可能执行到:If SetWenda Then GoTo chkagain 然后返回来chkagain:,所以我要问的是,是不是程序执行到chkagain:处,会当做一般的程序,继续执行chkagain:以下的内容,然后如果有goto 指向过来,也可以直接跳过来?
If COM1.PortOpen = True Then COM1.PortOpen = False
comSetting = Combo1.Text & ",n,8,1 "
COM1.Settings = comSetting
COM1.CommPort = Val(Combo1)
COM1.InputLen = 14
COM1.PortOpen = True
chkagain: COM1.InBufferCount = 0
Sleep 150 '延时150ms
If COM1.InBufferCount > 10 Then '>10说明开始有数据返回
If SetWenda Then GoTo chkagain
If False Then
Label1 = "BROADCAST "
ExBtn3.Enabled = False
bOnline = True
mode = True
' ExBtn5.Enabled = False
ExBtn6.Enabled = False
ExBtn7.Enabled = False
ExBtn9.Enabled = False
' ExBtn12.Enabled = False