MetaTrader 5 herunterladen

ArrayFill

Füllt das numerische Array mit dem angegebenen Wert.

void  ArrayFill(
   void&  array[],       // Array
   int    start,         // Index des Anfangselements
   int    count,         // Anzahl der Elemente
   void   value          // Wert, der mit Array gefüllt wird
   );

Parameter

array[]

[out]  Array des einfachen Typs (char, uchar, short, ushort, int, uint, long, ulong, bool, color, datetime, float, double).

start

[in]  Index des Anfangselements (von welchem Element auszufüllen). Anbei wird die eingestellte Seriengröße Flagge nicht berücksichtigt.

count

[in]  Die Anzahl der Elemente, die gefüllt werden muss.

value

[in] Wert, der mit Array gefüllt wird.

Rückgabewert

Keinen Rückgabewert.

Anmerkung

Beim Aufruf der ArrayFill() Funktion immer wird die gewöhnliche Richtung der Indexierung — von links nach rechts verstanden, d.h. die Veränderung den Zugang auf die Elemente des Arrays mit Hilfe der ArraySetAsSeries() Funktion wird nicht beachtet.

Das mehrdimensionale Array bei Bearbeitung von der Funktion ArrayFill werden eindimensional, zum Beispiel, wird das Array array[2][4] wie array[8], deshalb bei der Arbeit mit diesem Array zulässig vorgestellt, den Index des Anfangselementes gleich 5 zu bezeichnen. So wird der Aufruf von ArrayFill(array, 5, 2, 3.14) für das Array array[2][4] der Wert die 3.14 Elemente des Arrays array[1][1] und array[1][2] ausfüllen.

Beispiel:

void OnStart()
  {
//--- deklarieren wir ein dynamisches Array
   int a[];
//--- stellen wir die Größe ein
   ArrayResize(a,10);
//--- füllen wir die ersten 5 Elementen mit dem Wert 123
   ArrayFill(a,0,5,123);
//--- füllen wir 5 Elementen (seit 5.) mit dem Wert 456
   ArrayFill(a,5,5,456);
//--- Die Werte aller Elemente ausgeben
   for(int i=0;i<ArraySize(a);i++) printf("a[%d] = %d",i,a[i]);
  }