Автор Ѐелка)) задал вопрос в разделе Другие языки и технологии
как задать массив? и получил лучший ответ
Ответ от Илья Павлов[гуру]
При таком описании границы указывать обязательно. Можно написать переменную n, но с условием, что ее значение известно еще до объявления массива, т. е. переменная n - константа.
В вашем же случае, скорее всего, необходим динамический массив. Делается он так:
// Объявляем новый тип динамический массив
type A: array of Integer;
// Объявляем переменную типа А
var MyVar: A;
// Прежде чем использовать переменную MyVar, нам необходимо выделить под нее некоторое количество ячеек.
SetLength(MyVar, 100); // Выделено 100 ячеек, начиная с 0 до 99
// Теперь можно пользоваться
MyVar[0] := -1; MyVar[99] := 20; // и. т. д.
// После работы с таким массивом желательно освободить из-под него память
SetLength(MyVar, 0);
// Размер массива можно изменить по ходу работы с ним, например, добавить еще 100 ячеек
SetLength(MyVar, 200); // При этом данные из ячеек 0..99 не потеряются. Если новый размер окажется меньше старого, во всех ОСТАВШИХСЯ ячейках данные так же не потеряются.
Будут еще вопросы, пиши в ICQ: 228004347 или Агент.
Прямо нельзя, но есть обходный путь создания динамического массива с адресацией через указатель. Подробнее смотри в моем комментарии к предыдущему посту.
переменную указывать нельзя, можно константу.
про реализацию динамических массивов тут написали достаточно, но это не работает в Turbo Pascal. Там динамический массив задается через связные списки. Если нужны подробности пиши в агент или icq 452371863
для массива выделяют память какбы при компиляции можно и N поставить но придется задавать перед описанием массива константу
типа
const N=50;
A:array[1..n]of integer;
если указать n в скобках, как в вопросе, то это жесткое определение
Можно указать просто n...но перед этим n определить... типа
n=10
A:array[1...n] of integer
A:array[1...10] of integer -так жестко
Кажется, можно задать переменную, но это уже динамический массив, и совсем по-другому делается.