以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  GOTO语句请教  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=74808)

--  作者:300qh
--  发布时间:2015/1/21 16:18:36
--  GOTO语句请教

if ................then begin

goto abc;     //这个GOTO放到end里面和外面有什么区别?

end

....

....中间代码....

....

abc@ ma5:=ma(c,5);

 

计算到goto abc;  这句之后,直接跳到abc这一行,中间的代码全部不计算,那么中间的代码什么时候会计算到?


--  作者:jinzhe
--  发布时间:2015/1/21 16:33:44
--  

1.有区别,一个是要满足IF 才能计算GOTO,一个是无条件GOTO

2.IF不满足的时候


--  作者:300qh
--  发布时间:2015/1/21 16:51:06
--  
直接中转到abc那行开始计算,是代表abc行以下的所有代码计算还是只中转到abc这一行计算呀?


--  作者:jinzhe
--  发布时间:2015/1/21 16:54:33
--  
跳到ABC这一行开始计算,ABC后面的也会算
--  作者:300qh
--  发布时间:2015/1/21 17:07:57
--  

if ................then begin

goto abc;    

end


if ................then begin

goto abc2;    

end


if ................then begin

goto abc3;    

end

....

....中间代码....

....

abc@ ma5:=ma(c,5);//当跳转到这行的时候,以下两行跳转语句也运行吗?以及这个中间的语句

。。。。

。。。

还是执行到这一行为止?

abc2@ ma10:=ma(c,10);

。。。。。

。。。。//以及这个中间的语句

。。。

abc3@ ma20:=ma(c,20);


--  作者:jinzhe
--  发布时间:2015/1/21 17:14:09
--  

 

abc@

 

.....

 

 

abc2@

 

 

....

 

 

abc3@

 

....

 

 

如果是GOTO到ABC,那么会执行除了ABC2和ABC3之外的ABC之后所有的代码

如果是GOTO到ABC2,那么会执行到除了ABC3之外的ABC2后面的所有代码

 


--  作者:300qh
--  发布时间:2015/1/21 19:11:03
--  
谢谢老师指导,明白了