设为首页收藏本站

 找回密码
 注册
查看: 1682|回复: 1
打印 上一主题 下一主题

FOR I= 0 TO 100 [复制链接]

Rank: 3Rank: 3

精华
0
UID
257171
积分
133
帖子
99
主题
32
阅读权限
40
注册时间
2017-9-28
最后登录
2019-11-16
跳转到指定楼层
1#
发表于 2018-7-17 10:11:00 |显示全部楼层 |倒序浏览
for i = 0 to 100
{
............
...........
if(con) return;
}
能这样写吗?这样写能打断这个循环吗?请版主指教。

Rank: 3Rank: 3

精华
0
UID
257171
积分
133
帖子
99
主题
32
阅读权限
40
注册时间
2017-9-28
最后登录
2019-11-16
2#
发表于 2018-7-18 17:07:06 |显示全部楼层
本帖最后由 masterhdd 于 2018-7-18 17:21 编辑
hlp0410 发表于 2018-7-17 13:44
for循环一般是在已知计算量的情况下使用的,像你举例的0-100,也是已知计算101次,不知道您需要跳出循环 ...


1:本意是如果有买平挂单就撤单并返回进行延时,可一运行就会死机。2:此处的正确写法到底是 for i=1 to nCount1还是for i=0 to (nCount1-1)? 3:我是开机后先登录模拟账户,然后打开超级图标,再打开公式,接着就死机了。求版主给俺做主........

if(A_GetOpenOrderCount()>0)  
{
        nCount1 = A_GetOpenOrderCount;
        if(nCount1>0)
        {
          for i=1 to nCount1  //此处的正确写法到底是 for i=1 to nCount1还是for i=0 to (nCount1-1)?
           {
           nEntryFlag = A_OpenOrderEntryOrExit(i);                    
           nBuyOrSell = A_OpenOrderBuyOrSell(i);
           OrderPrice = A_OpenOrderPrice(i);
           strContractNo =A_OpenOrderContractNo(i);

           If( nEntryFlag==Enum_Exit )
               {
                if( nBuyOrSell==Enum_Buy )
                  {
                  A_DeleteOrder(strContractNo);
                  SetGlobalVar(10,1);
                  }
              }
          If (GetGlobalVar(10)>=1 && i==(nCount1))  Return;
        }  
    }
}

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-10 06:15

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部