Erros, bugs, perguntas - página 2642

 
Alexey Viktorov:

Provavelmente porque apenas uma pessoa à primeira vista olha para tal código

O criador pode descobrir o que vai acontecer sem pensar no assunto. Na minha opinião, a queixa deveria ser para C e C++, e não para MQL. É o mql que protege contra tais insectos ocasionais.

Não existe tal erro em C/C++.

Sergei Tabolin:

Esta sua função é um insecto. Se i===100, a próxima verificação para o mesmo i===100 não irá funcionar. E terá um loop infinito.

Dê uma vista de olhos mais atenta. Não há erro na função que afixei acima.

 
traveller00:

Não existe tal erro em C/C++.

Dê uma vista de olhos mais atenta. Não há erro na função que afixei.

Porque é que está a discutir? Foi-lhe dada a resposta. Utilização

Fórum sobre comércio, sistemas de comércio automatizados e testes estratégicos

Erros, Erros, Perguntas

Vladimir Karputov, 2020.02.11 05:11

Se a função não for declarada como nula, deve devolver um valor:

bool Func()
{
  for(int i=1;;++i)
  {
    if(i==1)
      continue;
    if(i==100)
      return false;
  }
  //---
  return(false);
}

 

Precisamos de remover os números da carteira e do saldo do cabeçalho do partido - são totalmente desnecessários e pouca informação usada!

O meu fórum agora só está acessível através da caixa pendente - horror!

 
Como é possível recolher automaticamente todos os ficheiros que o mq5 utiliza? Preciso de transferir o código fonte de uma EA. Há dezenas de ficheiros inludidos a partir de diferentes pastas.
 
fxsaber:
Com o que é possível recolher automaticamente todos os ficheiros que utilizam mq5? Preciso de transferir o código fonte de uma EA. Há dezenas de ficheiros inludidos a partir de diferentes pastas.

com um compilador de terceiros

UseiGCC para compilar códigos e definições abertas, mas não se pode executá-lo em 2 cliques, parece que só pode compilar todos os inlúdios numa pasta local e parece que o ficheiro principal deve ter uma extensão .c

Tente executá-lo pelo menos na linha de comando.

 g++ -E tst.c -o tst.ii

tst.c é o ficheiro principal e tst.ii é o ficheiro de texto de saída.

 
Igor Makanu:

por um compilador de terceiros.

Portanto, não pode saber o que

#include <..\Experts\FileName.mqh>

deve ser tomada em relação à pasta Incluir.

 
fxsaber:

Então ele não pode saber o que

deve ser tomada em relação à pasta Incluir.

sim, muito provavelmente não pode, precisa de caminhos completos na directiva do pré-compilador - mas como escrevi, de qualquer forma tem de copiar o projecto para uma pasta local, e lá para organizar tudo em pastas, parece que também não pode C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\E6E3D0917AE641512E4779524EB3B1AA

Mas a GCB pode definitivamente construir programas MQL - verifiquei-o há cerca de seis meses, experimentei-o ou esperei para ver se alguém me podia dizer.

 
fxsaber:
Como é possível recolher automaticamente todos os ficheiros que o mq5 utiliza? Preciso de transferir o código fonte da minha EA. Há dezenas de ficheiros inludidos a partir de diferentes pastas.

Sysinternals ProcMon.

 
fxsaber:
O que é a montagem automatizada de todos os ficheiros que utilizam mq5? Tenho de transferir o código fonte do meu Expert Advisor. Há dezenas de ficheiros inludidos a partir de diferentes pastas.

Esteartigo em particular foi escrito para esta tarefa. Há apenas uma lista de dependências, é claro. Para embalar tudo, é preciso fazer alguns ajustes.

Синтаксический анализ MQL средствами MQL
Синтаксический анализ MQL средствами MQL
  • www.mql5.com
Суть программирования заключается в формализации и автоматизации неких процессов с помощью языков общего или специального назначения. Торговая платформа MetaTrader позволяет применять программирование для решения самых разных задач трейдера, благодаря встроенному языку MQL. И обычно процесс программирования строится на анализе и обработке...
 

Se descrever uma tal estrutura:

struct MyStruct
   {
   double d_value;
   int    i_value;
   uchar  arr_u[100];
   };

e escrevê-lo num ficheiro, pode haver diferenças ao escrever para MQL5 e ler para MQL4 deste ficheiro? ou vice versa...

ou vice-versa... Em geral, existe alguma diferença nas línguas de armazenamento de tipos de dados complexos? (em memória, em ficheiros)