新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1327

 
按照MT4的例子 "STRINGS: ASCII CHARACTERS TABLE AND USE"

//+------------------------------------------------------------------+
//| StringLowerCase |
//+------------------------------------------------------------------+
string StringLowerCase(string str)
  {
   string s = str;
   int lenght = StringLen(str) - 1, symbol;
   while(lenght >= 0)
     {
      symbol = StringGetChar(s, lenght);
      if((symbol > 64 && symbol < 91) || (symbol > 191 && symbol < 224))
         s = StringSetChar(s, lenght, symbol + 32);// тут possible loss of data due to type conversion
      else
         if(symbol > -65 && symbol < -32)
            s = StringSetChar(s, lenght, symbol + 288);// тут possible loss of data due to type conversion
      lenght--;
     }
   return(s);
  }
//+------------------------------------------------------------------+
//| StringUpperCase |
//+------------------------------------------------------------------+
string StringUpperCase(string str)
  {
   string s = str;
   int lenght = StringLen(str) - 1, symbol;
   while(lenght >= 0)
     {
      symbol = StringGetChar(s, lenght);
      if((symbol > 96 && symbol < 123) || (symbol > 223 && symbol < 256))
         s = StringSetChar(s, lenght, symbol - 32);// тут possible loss of data due to type conversion
      else
         if(symbol > -33 && symbol < 0)
            s = StringSetChar(s, lenght, symbol + 224);// тут possible loss of data due to type conversion
      lenght--;
     }
   return(s);
  }

如果你不介意的话,请帮我解决这个问题...
 
Artyom Trishkin:

这个循环必须被逆转。否则就会有人问,为什么它不能正常工作?

我不知道这意味着什么。
 
MakarFX:
我不明白这意味着什么?

当删除时,如果从较小的索引转移到较大的索引,那么编号就会转移,当反向循环时,最后一个元素被删除。

当索引编号被移位时,可能会发生删除错误。第3个元素的索引将成为第2个元素,而第2个元素已经被删除。

 
Valeriy Yastremskiy:

当删除时,如果从较小的索引转移到较大的索引,那么编号就会转移,当反向循环时,最后一个元素被删除。

当索引编号被移位时,可能会发生删除错误。第3个元素的索引将成为第2个,而第2个元素已经被删除。

我应该这样做吗?

for(int a = ObjectsTotal()-1; a>=0; a--)

 
MakarFX:

我必须这样做吗?


是的。

 
Valeriy Yastremskiy:

是的。

谢谢你
 
Alekseu Fedotov:

做到这一点。

并更经常地检查帮助。

Alexey,非常感谢你的帮助--我已经开始了我的圣杯 机器))))))))))))))))),但我想我将不止一次地回到这里寻求建议。

 
Nataliia Darsavelidze:
你好!在图表设置中,有一个选项 "显示交易历史"。它在代码中是如何实现的?我不能以编程方式删除它。你是如何做到的?

这个问题是开放的。

 
Nataliia Darsavelidze:

这个问题是开放的。

这个问题似乎是关于MT5的。答案是:不是通过编程。这个问题可以结束了。

 
Nataliia Darsavelidze:

这个问题是开放的。

我没有听说过这个选项,我也没有看到它。

但有可能制作一个程序(脚本、专家、指标)。