[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 385

 
nadya:
É claro que pode, se sua variável for do tipo apropriado
Uma célula. Mas assim, apenas com constantes: "As arrays são inicializadas com uma seqüência unidimensional de constantes listadas separadas por vírgulas. A seqüência é rodeada por suportes de tecido encaracolado. "
 
kifa911:
Boa tarde, tenho uma pergunta sobre a inicialização de arrays. Está escrito no tutorial que: Uma matriz só pode ser rubricada com constantes do tipo apropriado. As matrizes unidimensionais e multidimensionais são inicializadas com uma seqüência unidimensional de constantes listadas separadas por vírgulas. A seqüência é rodeada por suportes de tecido encaracolado. Neste caso, estou confuso com a palavra "constante". Não pode ser atribuído um determinado índice de array a um valor através de uma variável.

A designação é possível, mas não durante a inicialização.

Ou seja, a situação:

int aaa = 4;
int bbb[5] = {0, 1, 2, 3, 0};
bbb[4] = aaa;

permitido

E a situação

int aaa = 4;
int bbb[5] = {0, 1, 2, 3, aaa};

causará um erro

 
nadya:
é claro que pode, se esta sua variável tiver o tipo apropriado

Então aqui vai uma pergunta. uma função tem que passar dois conjuntos de dados por referência, por exemplo:

void SomeFunction(int& firstmassive[][3],double& secondmassive[][3])

{

 int iCount=-1,

      ifirst,isecond,ithird;

 double dfirst,dsecond,dthird;

...

 iCount++;

  firstmassive[iCount][0]=ifirst;firstmassive[iCount][1]=isecond;firstmassive[iCount][2]=ithird;

  secondassive[iCount][0]=dfirst;secondmassive[iCount][1]=dsecond;secondmassive[iCount][2]=dthird;

  print("iCount= "+iCount+" firstmassive_2= "+firstmassive[iCount][1]+" isecond= "+isecond);

...

return(0);

}

Quando libero esta função para o trabalho, a guia "especialistas" no termo mensagens como, por exemplo

iCount= 0 firstmassive_2= 0 isecond= =15
iCount= 1 firstmassive_2= 0 isecond= =25
Acontece que nenhum valor da variável é passado para a matriz, embora esta última tenha um valor. O que eu fiz de errado?
 
artmedia70:

O nome do arquivo plug-in é: GetExstremumZZZPrice.mqh ????

Ela se encontra na pasta Terminal_folder/experts/include ???


O nome é o mesmo, estava na pasta das bibliotecas, agora está na pasta incluída, mas o resultado é o mesmo
 
kifa911:

Então aqui vai uma pergunta. uma função tem que passar dois conjuntos de dados por referência, por exemplo:

Quando libero esta função para trabalhar, a guia "especialistas" na térmica mostra mensagens deste tipo, por exemplo

Acontece que nenhum valor variável é passado para a matriz, mesmo que esta última tenha um valor. O que eu fiz de errado?

Não vejo o erro. talvez outra pessoa possa ajudá-lo
 
Mais uma vez, por favor, explique as operações de arquivo. Depois de escrever algumas informações em um arquivo , é possível removê-lo parcialmente do arquivo? Digamos que você escreveu algumas linhas em um documento de texto e então você pode apagar linhas desnecessárias ou corrigi-las usando funções de operações de arquivo?
 
fore-x:
Mais uma vez, por favor, explique as operações de arquivo. Depois de escrever algumas informações em um arquivo, é possível removê-lo parcialmente do arquivo? Digamos que você escreveu algumas linhas em um documento de texto e então você pode apagar linhas desnecessárias ou corrigi-las usando funções de operações de arquivo?
Você pode.
 
Zhunko:
Você pode.
  if(text != " ") 
    {
    handle = FileOpen(filename,FILE_CSV|FILE_READ|FILE_WRITE, ';'); //открыл файл
    FileSeek(handle,0,SEEK_SET );                               //переместил указатель   
    while(FileIsEnding(handle)==false)                              
      {
      pos = StringFind(FileReadString(handle),symb, 0);             //нашел нужную строку...  
      if(pos >= 0)break;                                   //...файловый указатель в конце строки
      if(FileIsEnding(handle)==true) break;                            
      }
                                 
      ?????????????????? //тут что делать, как удалить или перезаписать выбранную строку
    
    FileWrite(handle,text);     //записываем новую строку
    FileClose(handle);          //закрываем файл
    }  
Por favor, me guie. O que eu tenho que fazer agora, chegar ao início da linha? E depois?
 
kifa911:
Boa tarde, tenho uma pergunta sobre a inicialização das matrizes. No tutorial, está escrito que: Uma matriz só pode ser inicializada por constantes do tipo apropriado. As matrizes unidimensionais e multidimensionais são inicializadas com uma seqüência unidimensional de constantes listadas separadas por vírgulas. A seqüência é rodeada por suportes de tecido encaracolado. Neste caso, estou confuso com a palavra "constante". Não pode ser atribuído um determinado índice de array a um valor através de uma variável.

Portanto, você tem que distinguir entre: inicializar e atribuir.
 
Vinin:
E se você definir a linha para ontem ou para amanhã?

Obrigado por sua atenção, mas não entendo sua pergunta. A linha pode ser definida para qualquer data, e quando o gráfico chegar a ela, a EA vai acionar? Ou talvez eu não entenda algo, se você não se importa em me explicar.