Funkcje tablicowe:   ArrayCopy()

Funkcja int ArrayCopy() kopiuje zawartość jednej tablicy do innej tablicy i zwraca ilość skopiowanych elementów. Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

Skrypt do kopiowania danych z tablicy srcArray[] do tablicy dstArray[].

#property strict
void OnStart()
  {
//--- tablica dynamiczną docelowa, do której zostaną skopiowane dane
   double dstArray[];
//--- tablica statyczna, źródło danych
   double srcArray[] = {1.1, 2.2, 4.4};

/* indeks elementu początkowego w tablice docelowej,
   z którego zacznie się zapisywanie danych */

   int dstStart = 0;  // wartość domyślna

/* indeks elementu początkowego w tablice źródłowej,
   z którego zacznie się sczytywanie danych */

   int srcStart = 0;  // wartość domyślna

//--- zakres kopiowania
   int count = WHOLE_ARRAY; // cała tablica, wartość domyślna

//--- skopiować dane z srcArray do dstArray
   ArrayCopy(dstArray, srcArray, dstStart, srcStart, count);

//--- określić rozmiar tablicy
   int srcArraySize = ArraySize(srcArray);
//--- wyświetlić wynik
   for(int i = 0; i < srcArraySize; i++)
      Print("srcArray[",i,"] = ",srcArray[i],
            ", dstArray[",i,"] = ",dstArray[i]);
  }

Rys. 1. Przykład stosowania funkcji ArrayCopy().