[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 1071 1...106410651066106710681069107010711072107310741075107610771078...1145 新评论 volshebnik 2010.12.24 10:21 #10701 eddy: 这就是它的作用,这就是为什么它在if()中。 是的,但是你进入了一个循环,如果条件没有得到满足,你的代码结构就永远无法走出这个循环,它变成了无限的,不会被打断。你看不到sec!的参数是什么,它没有被声明。 Roma 2010.12.24 10:26 #10702 eddy: int sec=Seconds(); 怎么不宣布呢?) 循环必须在第二个变化时被打断 volshebnik 2010.12.24 10:29 #10703 eddy: 怎么不宣布呢?) 循环必须在第二个变化时被打断 宣称是秒杀,但秒杀!(带感叹号) ? Roma 2010.12.24 10:31 #10704 != 它是 "不平等的" volshebnik 2010.12.24 10:39 #10705 eddy: 是 "不等于"。 sec总是等于Seconds(),因为后者是一个常数,你把常数的值赋给了 "sec"。 Roma 2010.12.24 10:41 #10706 在init()中的这个循环,在同一个地方声明了sec volshebnik 2010.12.24 11:01 #10707 警报 "信息储存在哪里,直到什么时候?是否可以不在 "信号 "窗口中阅读,而是在终端中打开它们所在的位置(有些时候,当你切换到另一个应用程序时,该 窗口被关闭,你必须再次启动专家顾问才能看到它,这很不方便) ? Alexey Zhuravlev 2010.12.24 11:29 #10708 为什么这段代码对一个dc工作正常,但对另一个orderModify错误4051(无效票)? void Modify () int total = OrdersTotal(); for(int i=total-1;i>=0;i--) { OrderSelect(i, SELECT_BY_POS,MODE_TRADES); if (OrderModify (OrderTicket(),OrderOpenPrice(), OrderOpenPrice()-NormalizeDouble(300*Point,Digits), OrderTakeProfit(),0,CLR_NONE)== false) { Modify(); } } Roma 2010.12.24 11:45 #10709 int sec=Seconds(); while(true) if(sec!=Seconds()) break; // new sec 为什么这个循环没有被打断? Alexey Zhuravlev 2010.12.24 11:52 #10710 eddy: 为什么循环不被打断? 尝试,而(false) 只要sec!=Seconds(),该循环就会运行。 或像这样 while(true) if(sec==Seconds())break; // new sec 1...106410651066106710681069107010711072107310741075107610771078...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这就是它的作用,这就是为什么它在if()中。
int sec=Seconds();
怎么不宣布呢?)
循环必须在第二个变化时被打断
怎么不宣布呢?)
循环必须在第二个变化时被打断
是 "不等于"。
为什么这段代码对一个dc工作正常,但对另一个orderModify错误4051(无效票)?
void Modify ()
为什么这个循环没有被打断?
为什么循环不被打断?
尝试,而(false)
只要sec!=Seconds(),该循环就会运行。
或像这样
while(true)
if(sec==Seconds())break; // new sec