[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 353

 
granit77 писал(а) >>

Solo te stesso. È un privilegio dell'autore scrivere qualcosa e poi ripescare con gusto le pulci.

In questi casi, rimescolo i costrutti finiti in blocchi e vedo se l'errore scompare. I programmatori usano editor di terze parti con controllo delle parentesi. Qualcuno mi darà il link ora, non riesco a ricordare.

Catturare le pulci è eccitante. Mentre ne prendi uno, rielabori la logica. Ho preso molte cose nel mio blocco, ma questa pulce mi ha dato fastidio per tre settimane. Ricordo con malinconia quando dovevo scrivere per la contabilità 1-C. C'è un debugger - esegui un programma non funzionante e una linea alla volta sfoglia il contenuto di qualsiasi copiato - il sogno!

E rimirando i blocchi si ottengono un sacco di variabili indefinite

 
Vekker писал(а) >>

Prendere le pulci è eccitante. Finché ne prendi uno, stai ancora rielaborando la tua logica. Ne ho catturati molti nella mia unità, ma questa pulce è ora alla terza settimana. Ricordo con malinconia quando dovevo scrivere per la contabilità 1-C. C'è un debugger - esegui un programma non funzionante e una linea alla volta sfoglia il contenuto di qualsiasi copiato - il sogno!

E rimirando i blocchi si ottengono un sacco di variabili indefinite

Caricalo. O qui o di persona. >> Cercherò i bug.

 
DDFedor >> :

https://www.mql5.com/ru/forum/120538

ci sono due soluzioni...

- fate dei backup e poi confrontate (dovreste farli SEMPRE, è la prima cosa da imparare).

- In secondo luogo, vedi il link agli editor che possono catturare l'accoppiamento delle parentesi. ( blocco note, credo... )

zy... se nessuno dei due, commentate i blocchi fino a quando l'errore scompare. poi successivamente includete i blocchi commentati.

... "dividi e conquista"...

Chi lo fa - io aggiungo sempre "if() {}" a tutte le parentesi quando creo qualcosa con le parentesi, e poi scrivo dentro quello che ho previsto.

Non ricordo tali errori :)

 
Vekker >> :

Quando compilo quello che ho scritto, c'è un errore ETERNO '\fine_di_programma' - parentesi sinistra sbilanciata.

Ho controllato e ripetuto tutte le staffe, ma non ho trovato nulla.

Ricevo questo errore molto raramente. Perché cerco di mettere le parentesi quadre, per esempio le parentesi graffe, subito prima di inserire qualcosa al loro interno. E spesso eseguo la compilazione, in modo che, semmai, appaia un messaggio di errore.


E poi, se l'elenco è formattato indentato, l'accoppiamento di parentesi può essere trovato mettendo il cursore all'inizio della riga alla fine della quale c'è un'apertura e spostandosi verso il basso (cliccando sulla freccia giù) per chiuderla. Se trovate che la parentesi di chiusura è a sinistra del cursore, è chiaro che manca qualcosa.

 

Salve.

Per favore ditemi come copiare doppio buf[] in doppio bufer [0] []

Array Copy permette di copiare array monodimensionali

Ho provato in questo modo.

  if( Считать_ВсЕ_Бары){ pos = Bars-IndicatorCounted() ; }
    else{ pos = WindowBarsPerChart()*3 ; } 
  int per[8]={36,49,64,144,169,196,400,625};

for(int k=0; k<8; k++)
   while( pos >= 0) 
     {
       buf[ k][ pos] = iMA(NULL, T , per[ k], 0, Метод_Вычисления_МА, 4, pos);
       pos--;
     }
for( k=0; k< pos; k++)
 ma1_buffer[ pos]= buf[0][ pos];
non ha funzionato.

Grazie in anticipo.

ArrayCopy( oggetto &dest[], oggetto source[], int start_dest=0, int start_source=0, int count=WHOLE_ARRAY)
 
costy_ писал(а) >>

Salve.

Per favore ditemi come copiare doppio buf[] in doppio bufer [0] []

Array Copy permette di copiare array monodimensionali

Ho provato in questo modo.

non ha funzionato.

Grazie in anticipo.

ArrayCopy( oggetto &dest[], oggetto source[], int start_dest=0, int start_source=0, int count=WHOLE_ARRAY)

dopo il ciclo for si dovrebbe mettere il valore iniziale per la pos

 
vasya_vasya >> :

Dopo il ciclo for devi mettere il valore iniziale per la pos

Grazie, non ci sono altri metodi oltre all'assegnazione elemento per elemento?

int pos = WindowBarsPerChart()*3 ;
double sd[][];
   while( pos >= 0) 
     {
       sd[0][ pos] = iMA(NULL, T , Period_1, 0, Метод_Вычисления_МА, 4, pos);
       pos--;
     }
Alert( sd[0][0]);

Perché l'allarme dà 0!?

 
costy_ писал(а) >>

Grazie, non ci sono altri metodi oltre all'assegnazione elemento per elemento?

Perché l'allarme dà 0 !

Perché dovete ridimensionare l'array, altrimenti non vi verrà scritto nulla.

 
Vekker >> :

il cambiamento sta avvelenando la mia vita

niz=(Basso[j];
utilizzare

 
vasya_vasya >> :

perché dovete ridimensionare l'array, altrimenti non sarete in grado di scriverci nulla.

Quindi perché ridimensionare se non si specifica il numero di celle del buffer, è il massimo!