ArrayFill

Diziyi belirtilen değerle doldurur.

void  ArrayFill(
   void&  array[],      // dizi
   int    start,         // başlangıç indisi
   int    count,         // doldurulacak eleman sayısı
   void   value          // değer
   );

Parametreler

array[]

[out]  Basit tipli dizi (char, uchar, short, ushort, int, uint, long, ulong, bool, color, datetime, float, double).

start

[in]  Başlangıç indisi. Benzer bir durumda AS_SERIES bayrağı gözardı edilir.

count

[in]  Doldurulacak elemanların sayısı.

value

[in]  Diziyi doldurmak için belirlenen değer.

Dönüş değeri

Dönüş değeri yok.

Not

ArrayFill() fonksiyonu çağrıldığında daima normal (soldan sağa) indisleme yönü kullanılır. Yani, ArraySetAsSeries() fonksiyonuyla dizi elemanlarının erişim sırası değiştirilse bile bu değişim gözardı edilecektir.

Çok boyutlu diziler, ArrayFill() fonksiyonunun kullanımı sırasında tek boyutlu gözükür. Örneğin, array[2][4] dizisi, array[8] olarak işlem görür. Yani, bu diziyle çalışırken başlangıç elemanının indisini 5 olacak şekilde belirlemelisiniz. Burada, array[2][4] dizisi için yapılan ArrayFill(array, 5, 2, 3.14) çağrısı, array[1][1] ve array[1][2] elemanlarını 3.14 değeri ile doldurur.

Örnek:

void OnStart()
  {
//--- dinamik dizi bildirimi
   int a[];
//--- büyüklüğü ayarla
   ArrayResize(a,10);
//--- ilk beş elemanı 123 ile doldur
   ArrayFill(a,0,5,123);
//--- sonraki beş elemanı 456 ile doldur
   ArrayFill(a,5,5,456);
//--- değerleri göster
   for(int i=0;i<ArraySize(a);i++) printf("a[%d] = %d",i,a[i]);
  }