декларация двумерного массива
Скажите, как можно создать двумерный массив и в декларации сразу назначить ему данные?
делаю так: test%[][] = [[1,2,3,4,5,6,7,8],[1,2,3,4,5,6,7,8]] То есть мне нужно назначить ему значения, но необязательно чтобы он был динамическим. Когда делают такую проверку, то компилятор выводит сообщение о неправильном размере массива: If (test[ai+1, aj] = aid) And (test[ai+2, aj] = aid) Then Разве массивы test%[8][8] и test%[8,8] различны? заменил на: If (test[ai+1] [aj] = aid) And (test[ai+2] [aj] = aid) Then но теперь выдает опять сообщение вот на эту строку: item_.id = map.test% [i][j] также как и на эту: item_.id = map.test% [i, j] В чем тут дело?? |
Ответ: декларация двумерного массива
Ты объявляешь не двухмерный массив, а массив массивов, но прочитать пытаешься двухмерный. Это раз. Два, у тебя не test[8][8], а test[2][8]. Индексы начинаются с нуля и даже предположив, что ai = 0, индекс ai + 2 в твоём массиве не существует - выходит за границы размера.
|
Ответ: декларация двумерного массива
вот прочитал:
Можно создавать многомерные массивы. В примере создаем массив 3 x 3 с определением всех его элементов: My_map%[][] = [ [1,1,1],[1,1,2],[2,3,4] ] не понимаю, почему это у меня test[8][8] не двумерный массив? |
Ответ: декларация двумерного массива
Цитата:
При объявлении test[8, 8] получаем массив из 64ёх элементов. То же самое можно получить если объявить одномерный массив test[64] |
Ответ: декларация двумерного массива
Цитата:
|
Ответ: декларация двумерного массива
Цитата:
FAIL? Или болван? |
Ответ: декларация двумерного массива
Цитата:
массив задаешь так: test%[][] а обращаешься к его элементам так: test[ai+1, aj] насколько я в курсе, двумерный объявляется так: test[,] соответственно так же к нему и обращаться |
Часовой пояс GMT +4, время: 06:54. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot