Модератор: Модераторы
type
PSpis_massivov = ^Spis_massivov;
Spis_massivov = record
// тут Описание своего массива
next: PSpis_massivov //указатель на след запись или nil если последний
Есть одномерный массив символов(где-то 25 элементов), теперь этот массив надо скопировать (а=в) в цикле(от 1 до 255), в зависимости от условия случайного числа(чётное копируем, нечётное не копируем)..., т.е. я заранее не знаю сколько будет этих массивов, чтоб заранее их описать.. как можно это реализовать?
procedure Clon(nclons: word);
var
ArOrigin: array of char; // клонируемый массив
ArClon,ArClon2: array of array of char; // 1ая размерность = кол-ву клонов, 2-ая размерность = размерности исходного массива
i,j: longword;
begin
SetLength(ArOrigin,26);
// массив заполняется заглавными буквами англ. алфавита (26 букв)
for i:=Low(ArOrigin) to High(ArOrigin) do
ArOrigin[i]:=Char(i+65);
// устанавливаем размерность массива
SetLength(ArClon,nclons,High(ArOrigin)+1);
SetLength(ArClon2,nclons,High(ArOrigin)+1);
// клонируем массив в цикле
for i:=0 to nclons-1 do
ArClon[i]:=copy(ArOrigin);
// можно копировать указатель, а не массив
// но в правильности сомневаюсь
for i:=0 to nclons-1 do
Pointer(ArClon2[i]):=@ArOrigin[0];
end;
Вернуться в Обучение Free Pascal
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8