
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
No primeiro posto que estiver a fazer operações de atribuição, a atribuição múltipla em cascata é aceitável. Aqui está a tentar fazer uma comparação múltipla.
Sei como comparar, mas se(a<b<c) funciona e parece mais bonito, embora a ajuda não diga nada sobre isso. Mas como é que funciona mais depressa?
A sua expressão é igual a esta
if(a<(b<c))
se comparar b e c, o resultado desta comparação será 0 ou 1 e depois comparar este resultado com a.Sei como comparar, mas se(a<b<c) funciona e parece mais bonito, mesmo que a ajuda não diga nada sobre isso. Como funciona mais rápido?
É assim que funciona.
e isto não acontece.
A sua expressão é igual a isto
se comparar b e c, o resultado desta comparação será 0 ou 1 após o qual se compara este resultado com a.A sua expressão é a mesma que esta.
se comparar b e c, o resultado desta comparação é 0 ou 1 e depois compara-se este resultado com a.Estou a ver, mas aqui está o truque com esta expressão, mas não funciona
... Só eu penso de alguma forma que a e b serão comparados primeiro (posso estar errado, claro)...
Estou a ver, mas aqui está o truque com esta expressão, mas não funciona
Não, é só que é preciso ter em conta as prioridades das operações e o comentário de Urain.
Também não há qualquer problema com esta expressão, mas ela falha muito mal.
Esta edição é descrita em pormenor na secção "Prioridades e ordem de operações ". (A prioridade e a ordem das operações devem ser tidas em conta).
Assim, se bem entendi, a comparação de acordo com o compilador parece-se com isto (tendo em conta os comentários de Nikolai)
Qual é o tamanho aproximado da lista? Talvez haja um limite para o tamanho da lista...
Exactamente 100 linhas.
Experimentei com uma das minhas bibliotecas (110 funções), exibia 100 a 106 na lista (e um número diferente a toda a hora, mas não 110).
Ao ler o ficheiro .csv, vários problemas surgiram ao mesmo tempo. A fim de tentar descobrir as razões do mau funcionamento, escrevi um guião simples. O guião lê dados do ficheiro "test.csv". Assim que chega ao fim do ficheiro, imprime o número de iteração do laço "para", o tamanho do ficheiro e a posição do ponteiro do ficheiro no registo. Mas aqui acontecem coisas incompreensíveis, nomeadamente: O ficheiro "test.csv" tem apenas 15 linhas, pelo que o número de iteração do laço "para" deve ser 14, mas a revista gera 0. O tamanho do ficheiro é impresso correctamente, mas a posição do ponteiro final do ficheiro tem um tamanho maior do que o próprio ficheiro por alguma razão. Código do guião:
ficheiro "test.csv" e log em anexo. Quem tem alguma ideia sobre esta questão?
P.S. O mais interessante é que em MT4 este guião funciona sem erros.
Ao ler o ficheiro .csv, vários problemas surgiram ao mesmo tempo. A fim de tentar descobrir as razões do mau funcionamento, escrevi um guião simples. O guião lê dados do ficheiro "test.csv". Assim que chega ao fim do ficheiro, imprime o número de iteração do laço "para", o tamanho do ficheiro e a posição do ponteiro do ficheiro no registo. Mas aqui acontecem coisas incompreensíveis, nomeadamente: O ficheiro "test.csv" tem apenas 15 linhas, pelo que o número de iteração do laço "para" deve ser 14, mas a revista gera 0. O tamanho do ficheiro é impresso correctamente, mas a posição do ponteiro final do ficheiro tem um tamanho maior do que o próprio ficheiro por alguma razão. Código do guião:
ficheiro "test.csv" e log em anexo. Quem tem alguma ideia sobre esta questão?
P.S. O mais interessante é que em MT4 este guião funciona sem erros.
Adicionar a bandeira FILE_ANSI, uma vez que lê unicode por defeito:)
Além disso, terei 15 anos, uma vez que há uma linha em branco no final.