void OnStart() { //--- criar arrays double one_dim[]; double four_dim[][10][5][2]; //--- tamanhos int one_dim_size=25; int reserve=20; int four_dim_size=5; //--- variáveis auxiliares int size; //--- alocar memória sem fazer backup ArrayResize(one_dim,one_dim_size); ArrayResize(four_dim,four_dim_size); //--- 1. array unidimensional Print("+==========================================================+"); Print("Tamanhos de arrays:"); Print("1. Array unidimensional"); size=ArraySize(one_dim); PrintFormat("Tamanho dimensão zero = %d, Tamanho array = %d",one_dim_size,size); //--- 2. array multidimensional Print("2. Array multidimensional"); size=ArraySize(four_dim); PrintFormat("Tamanho dimensão zero = %d, Tamanho array = %d",four_dim_size,size); //--- tamanhos de dimensões int d_1=ArrayRange(four_dim,1); int d_2=ArrayRange(four_dim,2); int d_3=ArrayRange(four_dim,3); Print("Verificar:"); Print("Dimensão zero = Tamanho de array / (Primeira dimensão * Segunda dimensão * Terceira dimensão)"); PrintFormat("%d = %d / (%d * %d * %d)",size/(d_1*d_2*d_3),size,d_1,d_2,d_3); //--- 3. array unidimensional com backup de memória Print("3. Array unidimensional com backup de memória"); //--- dobro do valor one_dim_size*=2; //--- alocar memória com o backup ArrayResize(one_dim,one_dim_size,reserve); //--- imprimir o tamanho size=ArraySize(one_dim); PrintFormat("Tamanho com o backup = %d, Atual tamanho do array = %d",one_dim_size+reserve,size); } |