[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 250
TarasBY: Prima si calcola il profitto attuale su tutti gli ordini aperti, poi lo si confronta con il livello dichiarato: se è superiore, si eliminano tutti gli ordini. Questa procedura (e non solo) è fatta da questo EA (anche il codice è lì).
строка "", старый вариант: 656D6F73, новый вариант: 01CD8A90
строка "something", старый вариант: 6E696874, новый вариант: 01CD9010
строка "MyStr", старый вариант: 00360072, новый вариант: 01CD8AA0
строка "mystr", старый вариант: 00360072, новый вариант: 01CD8AA8
строка "", старый вариант: 656D6F73, новый вариант: 01C97858
строка "something", старый вариант: 6E696874, новый вариант: 01CDCC30
строка "MyStr", старый вариант: 00360072, новый вариант: 01C978868
строка "mystr", старый вариант: 00360072, новый вариант: 01C997870
строка "", старый вариант: 656D6F73, новый вариант: 01D93108
строка "something", старый вариант: 6E696874, новый вариант: 01CC5A58
строка "MyStr", старый вариант: 00360072, новый вариант: 01D93118
строка "mystr", старый вариант: 00360072, новый вариант: 01D93120
Nel primo caso abbiamo un puntatore al primo elemento del campo della struttura MqlStr.string, nel secondo caso abbiamo un puntatore al primo elemento della stringa (LPCSTR ancora lo stessoconstchar*). Vediamo indirizzi diversi. P-perché? Risulta che la stringa come un array char e la stringa come struttura interna della sua rappresentazione in MQL4 hanno indirizzi diversi? O significa che la "struttura della stringa" descritta in ExpertSample come formato interno è artificiale, e il suo formato interno in MQL4 è lpsz? O forse ho sbagliato il primo codice?
Salve a tutti, potete consigliarmi, dopo le compilazioni sull'icona dell'EA appare un lucchetto e posso vederlo solo nella finestra di download attraverso il programma e nella cartella è invisibile, come risolvere il problema? Puoi ripararlo?
In alcuni esempi, vedo return(-1), return(0) o semplicemente return. Uso return(0) per interrompere il programma da questa posizione. Potete dirmi cosa fanno return(-1) e return?
gyfto: O significa che la "struttura delle stringhe", descritta in ExpertSample come formato interno, è artificiale, e infatti il suo formato interno in MQL4 è lpsz?
Questo significa che nella DLL la stringa è trasferita esattamente come char* e non come MqlStr. Ma non significa che nel programma ex4 la stringa non è memorizzata come MqlString. In generale, il trasferimento di parametri da ex4 a dll è (secondo gli sviluppatori) un processo piuttosto complesso, accompagnato da tutti i tipi di controlli e trasformazioni di parametri.
laveosa: Salve a tutti, potete consigliarmi, dopo le compilazioni sull'icona dell'EA appare un lucchetto e posso vederlo solo nella finestra di download attraverso il programma e nella cartella è invisibile, come risolvere il problema? Grazie.
Win 7 e il terminale è sull'unità di sistema? Volete sbarazzarvi dei problemi attuali e futuri - spostate il terminale su un'altra unità e "tutto si risolverà".
paladin80: In alcuni esempi, vedo return(-1), return(0) o semplicemente return. Uso return(0) per interrompere il programma da questa posizione. Potete dirmi cosa fanno return(-1) e return?
È il valore di ritorno restituito dalla funzione. Torna alla matematica.
paladin80: In alcuni esempi, vedo return(-1), return(0) o semplicemente return. Uso return(0) per interrompere il programma da questo punto. Per favore, ditemi, cosa fanno return(-1) e return?
return(-1) restituisce meno uno come risultato della funzione, che (-1) può significare qualcosa solo se lo sviluppatore di quel programma ce l'ha messo lui stesso. Altrimenti, non significa nulla.
return termina semplicemente la funzione (usato quando il tipo di ritorno è void).
TarasBY: Win 7 e il terminale è sull'unità di sistema? Vuoi sbarazzarti dei problemi attuali e futuri - sposta il terminale su un'altra unità e "tutto si risolverà".
Prima si calcola il profitto attuale su tutti gli ordini aperti, poi lo si confronta con il livello dichiarato: se è superiore, si eliminano tutti gli ordini. Questa procedura (e non solo) è fatta da questo EA (anche il codice è lì).
Grazie per il suggerimento
Non capisco.
//C++
Zhunko:
È ancora così:
L'ho eseguito tre volte con questo codice:
Si riflette nel registro:
Nel primo caso abbiamo un puntatore al primo elemento del campo della struttura MqlStr.string, nel secondo caso abbiamo un puntatore al primo elemento della stringa (LPCSTR ancora lo stessoconst char*). Vediamo indirizzi diversi. P-perché? Risulta che la stringa come un array char e la stringa come struttura interna della sua rappresentazione in MQL4 hanno indirizzi diversi? O significa che la "struttura della stringa" descritta in ExpertSample come formato interno è artificiale, e il suo formato interno in MQL4 è lpsz? O forse ho sbagliato il primo codice?
O significa che la "struttura delle stringhe", descritta in ExpertSample come formato interno, è artificiale, e infatti il suo formato interno in MQL4 è lpsz?
Questo significa che nella DLL la stringa è trasferita esattamente come char* e non come MqlStr. Ma non significa che nel programma ex4 la stringa non è memorizzata come MqlString. In generale, il trasferimento di parametri da ex4 a dll è (secondo gli sviluppatori) un processo piuttosto complesso, accompagnato da tutti i tipi di controlli e trasformazioni di parametri.
Salve a tutti, potete consigliarmi, dopo le compilazioni sull'icona dell'EA appare un lucchetto e posso vederlo solo nella finestra di download attraverso il programma e nella cartella è invisibile, come risolvere il problema? Grazie.
In alcuni esempi, vedo return(-1), return(0) o semplicemente return. Uso return(0) per interrompere il programma da questa posizione. Potete dirmi cosa fanno return(-1) e return?
In alcuni esempi, vedo return(-1), return(0) o semplicemente return. Uso return(0) per interrompere il programma da questo punto. Per favore, ditemi, cosa fanno return(-1) e return?
return(-1) restituisce meno uno come risultato della funzione, che (-1) può significare qualcosa solo se lo sviluppatore di quel programma ce l'ha messo lui stesso. Altrimenti, non significa nulla.
return termina semplicemente la funzione (usato quando il tipo di ritorno è void).
Questo è il valore restituito dalla funzione. Torna alla matematica.
In generale, return(0) ferma la funzione int start() e aspetta il prossimo tick. Se non c'è nessuna cifra o è -1, cosa succede in int start()?
Win 7 e il terminale è sull'unità di sistema? Vuoi sbarazzarti dei problemi attuali e futuri - sposta il terminale su un'altra unità e "tutto si risolverà".
Grazie mille :) Farò un tentativo.