Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1061

 
fxsaber:

Obrigado, embora eu não entenda tudo aqui.

Em particular, onde está a leitura real do arquivo ?

E por que as funções descritas na documentação como trabalhando com arquivos csv não funcionam de fato com eles?

 
MakarFX:

Neste caso, a janela de alerta não se abre.(

Isso não é verdade. Recentemente fiz uma pergunta ao baterista... e ele usou sua posição oficial para me banir por uma semana por ter feito essa pergunta. Você quer que eu lhe faça a mesma pergunta?

Porque eu escrevi em preto em russo "ps: Eu verifiquei tudo". E quem o proíbe de verificar antes de tais declarações?

 
Yurixx:

Obrigado, embora eu não entenda tudo aqui.

Em particular, onde está a leitura real do arquivo ?

E por que as funções descritas na documentação como trabalhando com arquivos csv não funcionam de fato com eles?

Tanto quanto sei, eles funcionam, mas há problemas para mover o ponteiro no arquivo.

 

Alexey Viktorov:

Porque eu escrevi de preto em russo, "ps: Eu verifiquei tudo". E quem o proíbe de verificar antes de fazer tais declarações?

Você é Deus! A decisão foi tão fácil e você não disse nada.

Obrigado.

 
Alexey Viktorov:

Tanto quanto sei funciona, mas há problemas ao mover o ponteiro no arquivo.

Acontece que a MQL5 é muito mais rigorosa do que a MQL4.

O parâmetro delimitador em FileOpen() deve ser do tipo curto, e apenascitações simples devem ser usadas para especificar seu valor.

Além disso, as bandeiras de função devem conter referência ao tipo de arquivo FILE_ANSI ou FILE_UNICODE.

Caso contrário, como no meu caso, a função irá armazenar todo o arquivo csv em uma variável escalar.

 

Quem tem mais a dizer sobre este assuntohttps://www.mql5.com/ru/forum/160683/page1054#comment_14760155 . Pelo que entendo, você não pode passar estruturas locais para uma função, elas são sempre visíveis em toda a funçãohttps://www.mql5.com/ru/forum/160683/page1060#comment_14768305 . Eu quero fazer o que

int OnInit()
  {
     {
      struct MyPoint// локально объявил структуру внутри функции
        {
         int         x[5];
         int         y;
        };
      MyPoint qw1;
      EqualPointsP(qw1);// передал структуру в функцию EqualPointsP

     }
   return(INIT_SUCCEEDED);
  }

void OnDeinit(const int reason) {}

bool EqualPointsP(MyPoint & qw)
  {
   Print("EqualPointsP ");
   bool f = true;
   return f;
  }

É possível fazer isso?

 
Seric29:

Quem tem mais a dizer sobre este assuntohttps://www.mql5.com/ru/forum/160683/page1054#comment_14760155 . Pelo que entendo você não pode passar estruturas locais para uma função, elas são sempre visíveis em toda a funçãohttps://www.mql5.com/ru/forum/160683/page1060#comment_14768305 . Eu quero fazer o que

É possível fazer isso?

Use o modelador de código (Ctrl + <) - é impossível dizer onde e como seus parênteses são colocados - tudo está torto. Por esta razão, pessoalmente, eu não olhei. Eu tentei, mas meus olhos disseram para deixar cair, então deixei cair...

 
MakarFX:

Você é Deus! A decisão foi tão fácil e você ficou quieto.

Obrigado.

Eu não me calei, expressei o que me lembrei durante dez anos. mas algum tempo depois houve uma mudança e meus conhecimentos se tornaram obsoletos. Para lhe ensinar algo eu tive que escrever código e verificar com diferentes variantes. E tudo isso poderia e deveria ter sido verificado por você.

É para o futuro. Boa sorte.

 
Artyom Trishkin:

Use o modelador de código (Ctrl + <) - é impossível determinar a partir da mosca onde e como seus parênteses são colocados - tudo está torto. Por esta razão, pessoalmente, eu não procurei. Eu tentei, mas meus olhos disseram para deixar cair e eu deixei cair.

Bem, basicamente não há nada para estilizar, você pode copiar e colar no MT4, é basicamente assim que eu escrevo, apenas de uma forma mais concisa. Bem, eu corrigi isso. Tais estruturas podem ser aprovadas ou não?

 
Seric29:

Bem, basicamente não há nada para estilizar, você pode copiar e colar no MT4, é basicamente assim que eu escrevo, apenas de uma forma mais concisa. Bem, eu corrigi isso. Tais estruturas podem ser transferidas ou não?

Mas posso verificar pessoalmente? É difícil? E por que eu tenho que escrever coisas desnecessárias?

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   struct MyPoint// локально объявил структуру внутри функции
     {
      int         x[5];
      int         y;
     } qw1;

   EqualPointsP(qw1);// передал структуру в функцию EqualPointsP
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {}

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool EqualPointsP(MyPoint &qw)
  {
   Print("EqualPointsP ");
   return true;
  }

Ainda não verifiquei. O que está lhe impedindo?

Razão: