ArraySize

La funzione restituisce il numero di elementi di un array selezionato.

int  ArraySize(
   const void&  array[]    // array verificato
   );

Parametri

array[]

[in] Array di qualsiasi tipo.

Valore restituito

Value of int type.

Nota

Per un array unidimensionale, il valore che deve essere restituito da ArraySize è uguale a quello di ArrayRange(array,0).

Esempio:

voidOnStart()
  {
//--- crea gli array
   double one_dim[];
   double four_dim[][10][5][2];
//--- grandezze
   int one_dim_size=25;
   int reserve=20;
   int four_dim_size=5;
//--- variabile ausiliaria
   int size;
//--- alloca la memoria senza backup
   ArrayResize(one_dim,one_dim_size);
   ArrayResize(four_dim,four_dim_size);
//--- 1. Array uni-dimensionale
   Print("+==========================================================+");
   Print("Grandezze degli array:");
   Print("1. Array uni-dimensionale ");
   size=ArraySize(one_dim);
   PrintFormat("Grandezza della dimensione Zero = %d, Grandezza dell'array = %d",one_dim_size,size);
//--- 2. array multidimensionale
   Print("2. Array multidimensionale");
   size=ArraySize(four_dim);
   PrintFormat("Grandezza della dimensione Zero = %d, Grandezza dell'array = %d",four_dim_size,size);
//--- grandezze delle dimensioni
   int d_1=ArrayRange(four_dim,1);
   int d_2=ArrayRange(four_dim,2);
   int d_3=ArrayRange(four_dim,3);
   Print("Controllo:");
   Print("Dimensione Zero = Grandezza Array / (Prima dimensione * Seconda dimensione * Terza dimensione)");
   PrintFormat("%d = %d / (%d * %d * %d)",size/(d_1*d_2*d_3),size,d_1,d_2,d_3);
//--- 3. array uni-dimensionale con backup memoria
   Print("3. Array uni-dimensionale con un backup memoria");
//--- raddoppia il valore
   one_dim_size*=2;
//--- alloca la memoria con backup
   ArrayResize(one_dim,one_dim_size,reserve);
//--- stampa la grandezza
   size=ArraySize(one_dim);
   PrintFormat("Grandezza con backup = %d, Attuale grandezza dell'array = %d",one_dim_size+reserve,size);
  }