Кибор » Кибор - Интегрированная среда разработки ботов » Отчет о ошибках » Указатель на массив

Страниц (1): [1]
 

1. RussianRemaker - 10 Марта, 2014 - 16:47:54 - перейти к сообщению
При написании кода столкнулся с такой ситуацией, когда размерность массива вычисляется во время работы скрипта и какой она будет, предугадать невозможно.
Но оказалось, если размерность массива указана с помощью переменных и после этого происходит передача указателя на такой массив в функцию, то Кибор завершает свою работу с ошибкой.

Например, этот код работает:
CODE:
int a[10][50];

plus(#a[0][0]);
messagebox(a[5][25]);

function plus(int #c){
c[5][25] = 5;
}

А этот код не работает:
CODE:
int k = 10;
int l = 50;
int a[k][l];

plus(#a[0][0]);
messagebox(a[5][25]);

function plus(int #c){
c[5][25] = 5;
}

Выдается ошибка:
Ошибка индификации указателя: #a

Конечно, можно задать размерность массива изначально слишком большой, чтобы не произошло переполнение, но это не очень удобно.
2. Kibor - 10 Марта, 2014 - 16:53:28 - перейти к сообщению
Не ошибка это. Нед динамичных массивов.
Только задавать больший с запасом.
3. RussianRemaker - 10 Марта, 2014 - 17:04:14 - перейти к сообщению
Понятно.
Не удобно, но не критично. Попробую реализовать передачу промежуточных результатов, как-нибудь по другому.

Powered by ExBB FM 1.0 Final