Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1686
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
ist größer oder gleich, da das erste Element des Arrays ebenfalls berücksichtigt werden muss und sein Index im Array Null ist.
Nein, das ist in Ordnung. Wenn es keine Positionen gibt, ist i=OrdersTotal()-1 gleich -1. Und die Schleifenbedingung i>=0 wird nicht sofort ausgeführt. Und das Programm wird nicht in die Schleife eintreten.
Ich verstehe nicht, auf welches Feld sich alle hier beziehen. Wenn OrdersTotal nicht auf diese Weise funktioniert.
Die Aufträge befinden sich im Wesentlichen in einem Array im Programm, wir sehen es nur nicht. OrdersTotal ist gleich ArraySize und zeigt die Gesamtzahl der Elemente an.
In einem Array beginnt der Index des ersten Elements immer mit Null und die Größe des letzten Elements minus Eins.
Die Aufträge befinden sich im Wesentlichen in einem Array im Programm, wir sehen es nur nicht. OrdersTotal ist gleich ArraySize und zeigt die Gesamtzahl der Elemente an.
Der Index des ersten Elements im Array ist immer null, während die Größe des letzten Elements jeweils minus eins ist.
Welchen Unterschied macht es, wo sich die Bestellungen befinden, wenn OrdersTotal kein Array ist. Sie gibt die Anzahl der Aufträge zurück, nicht den Array-Index.
Aber das ist nicht korrekt, es stellt sich heraus, dass "Summe der Aufträge" 1 ist, was bedeutet, dass 1 Auftrag immer von der Schleife ausgeschlossen wird.
die Aufträge sind in einer nummerierten Liste aufgeführt... Die Liste zählt von 0 abwärts...
Zum Beispiel
Seriennummer 0, Kauftyp, Los 0.1
Seriennummer 1, Verkaufstyp, Los 1
Seriennummer 2, Verkaufstyp, Los 0,5
laufende Nummer 3, Kauftyp, Los 0,16
Wenn Sie jetzt OrdersTotal() aufrufen, wird = 4 angezeigt.
Aber wenn wir durch alle Zeilen der Liste navigieren wollen, müssen wir durch die Nummern 0 1 2 3 gehen, die Nummer 4 ist nicht hier... obwohl es 4 Aufträge gibt.
Also wird ein Trick angewendet, wenn man eine Schleife zusammenstellt, minus 1 bei der Anzahl der Aufträge, das war's...
Welchen Unterschied macht es, wo sich die Bestellungen befinden, wenn OrdersTotal kein Array ist. Sie gibt die Anzahl der Aufträge zurück, nicht den Array-Index.
Welchen Unterschied macht es, wo sich die Aufträge befinden, wenn OrdersTotal kein Array ist?
Aber das ist nicht korrekt, es stellt sich heraus, dass "Summe der Aufträge" 1 ist, was bedeutet, dass 1 Auftrag immer von der Schleife ausgeschlossen wird.
Wenn Sie "-1" nicht mögen, können Sie dies tun
Die Aufträge befinden sich im Wesentlichen in einem Array im Programm, wir sehen es nur nicht. OrdersTotal ist gleich ArraySize und zeigt die Gesamtzahl der Elemente an.
In einem Array beginnt der Index des ersten Elements immer mit Null, und die Größe des letzten Elements - minus Eins.
Total und Array-Index sind also unterschiedliche Dinge, warum glauben Sie, dass es dasselbe ist? Um ein Array mit einem Index von 1 zu erstellen, geben Sie 1, nicht 0, ein (int ar[1]), so dass ArraySize( ar ) auch 1, nicht 0, zurückgibt.
Wenn Sie "-1" nicht mögen, können Sie
Das ist nicht korrekt... eine Bestellung mit der Nummer 0 wird übersprungen...
Die korrekte Vorgehensweise ist wie folgt