Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1686
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
é maior ou igual a, porque o primeiro elemento da matriz também precisa ser levado em conta, e seu índice na matriz é zero.
Não, está tudo bem. Se não houver posições, então i=OrdensTotal()-1 será igual a -1. E a condição de loop i>=0 não será executada imediatamente. E o programa não entrará no laço.
Não entendo a que matriz todos estão se referindo aqui. Se a OrderTotal não funciona assim.
As ordens estão essencialmente em um array no programa, nós simplesmente não vemos isso. OrdensTotal é igual a ArraySize, e mostra o número total de elementos.
Em uma matriz, o índice do primeiro elemento começa sempre com zero, e o tamanho do último elemento menos um.
As ordens estão essencialmente em um array no programa, simplesmente não o vemos. OrdensTotal é igual a ArraySize, e mostra o número total de elementos.
O índice do primeiro elemento da matriz é sempre zero, enquanto o tamanho do último, respectivamente, é menos um.
Que diferença faz onde as ordens estão localizadas, se OrderTotal não é uma matriz. Ele retorna o número de pedidos, não o índice de matriz.
Mas isso não é correto, acontece que "soma de ordens" é 1, o que significa que 1 ordem será sempre excluída do laço.
os pedidos estão em uma lista numerada... A lista conta regressivamente a partir de 0...
Por exemplo
número de série 0, tipo de compra, lote 0,1
número de série 1, tipo de venda, lote 1
número de série 2, tipo de venda, lote 0,5
número de sequência 3, tipo de compra, lote 0,16
Se você agora chamar OrderTotal(), ele irá = 4
Mas se quisermos navegar por todas as linhas da lista, precisamos passar pelos números 0 1 2 3, o número 4 não está aqui... embora existam 4 ordens.
Então um truque é feito, ao montar um loop, menos 1 no número de pedidos, é isso...
Que diferença faz onde as ordens estão localizadas se o OrderTotal não é uma matriz. Ele retorna o número de pedidos, não o índice de matriz.
Que diferença faz onde as ordens estão localizadas se o OrderTotal não é uma matriz
Mas isto não é correto, você recebe "soma de pedidos" - 1, ou seja, 1 pedido será sempre excluído do laço.
Se você não gosta de "-1", você pode fazer isso
As ordens estão essencialmente em um array no programa, simplesmente não o vemos. OrdensTotal é igual a ArraySize, e mostra o número total de elementos.
Em uma matriz, o índice do primeiro elemento começa sempre com zero, e o tamanho do último - menos um.
Então, total e índice de matriz são coisas diferentes, por que você acha que é a mesma coisa? Para criar um array com 1 índice, digite 1, não 0, (int ar[1]), assim ArraySize( ar ) também retorna 1, não 0.
Se você não gosta de "-1", você pode
não é correto... um pedido com o número 0 será pulado...
A maneira correta é -