ArraySize

La fonction retourne le nombre d'éléments d'un tableau sélectionné.

int  ArraySize(
   const void&  array[]    // tableau à vérifier
   );

Paramètres

array[]

[in]  Tableau de n'importe quel type.

Valeur de Retour

Valeur du type int.

Note

Pour un tableau à 1 dimension, la valeur retournée par ArraySize est égale à celle de ArrayRange(array,0).

Exemple :

void OnStart()
  {
//--- crée les tableaux
   double one_dim[];
   double four_dim[][10][5][2];
//--- tailles
   int one_dim_size=25;
   int reserve=20;
   int four_dim_size=5;
//--- variable supplémentaire
   int size;
//--- alloue la mémoire sans réserve
   ArrayResize(one_dim,one_dim_size);
   ArrayResize(four_dim,four_dim_size);
//--- 1. tableau à 1 dimension
   Print("+==========================================================+");
   Print("Tailles des tableaux :");
   Print("1. Tableau à 1 dimension");
   size=ArraySize(one_dim);
   PrintFormat("Taille de la dimension Zéro = %d, Taille du tableau = %d",one_dim_size,size);
//--- 2. Tableau à plusieurs dimensions
   Print("2. Tableau à plusieurs dimensions");
   size=ArraySize(four_dim);
   PrintFormat("Taille de la dimension Zéro = %d, Taille du tableau = %d",four_dim_size,size);
//--- tailles des dimensions
   int d_1=ArrayRange(four_dim,1);
   int d_2=ArrayRange(four_dim,2);
   int d_3=ArrayRange(four_dim,3);
   Print("Vérification :");
   Print("Dimension zéro = Taille du tableau / (Première dimension * Deuxième dimension * Troisième dimension)");
   PrintFormat("%d = %d / (%d * %d * %d)",size/(d_1*d_2*d_3),size,d_1,d_2,d_3);
//--- 3. tableau à 1 dimension avec réserve de mémoire
   Print("3. Tableau à 1 dimension avec réserve de mémoire");
//--- double la valeur
   one_dim_size*=2;
//--- allocatation mémoire avec réserve
   ArrayResize(one_dim,one_dim_size,reserve);
//--- affiche la taille
   size=ArraySize(one_dim);
   PrintFormat("Taille avec réserve = %d, Taille réelle du tableau = %d",one_dim_size+reserve,size);
  }