Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.03;
Скачать: CL | DM;

Вниз

Сopy и SetLength   Найти похожие ветки 

 
007bond   (2003-02-20 18:30) [0]

програмисты подскажите
как правильно удалить найденый символ из динамического массива?
фунциями Сopy и SetLength у меня не получается.


 
jack128 ©   (2003-02-20 19:01) [1]

type
TDinArrayOfInteger = array of integer;
procedure DeleteFromArray(var Arr : TDinArrayOfInteger; Index,Count : integer);
var PSource, PDest : PInteger;
begin
PSourse := PInteger(Integer(@Arr[0])+4*(Index+Count));
PDest := PInteger(Integer(@Arr[0])+4*Index);
Move(PSource^,PDest^,SizeOf(integer)*(Length(Arr)-Count));
SetLength(Arr,Length(Arr)-Count);
end;

+ надо добавить проверкуна коректность значений Index и Count...

ЗЫ хотя стандартная ф-ция наверника есть..


 
Mikhail ©   (2003-02-20 19:22) [2]

Move


 
shodan   (2003-02-20 20:33) [3]

var DynArray : array of integer;
for i:=IndexofArray+1 to Length(DynArray)-1 do
DynArray[i-1]:=DynArray[i];
if Length(DynArray) > 0 then SetLength(DynArray,Length(DynArray)-1);


 
PVOzerski ©   (2003-02-21 06:30) [4]

Но если у Вас в массиве СИМВОЛЫ, может, логичнее использовать не массив, а длинную строку? К ней и функций полезных много. Delete, например.



Страницы: 1 вся ветка

Текущий архив: 2003.03.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
1-5559
KeepeR
2003-02-21 15:20
2003.03.03
Формат даты


3-5463
E_Dimon
2003-02-11 16:51
2003.03.03
Master-Detail


14-5719
MsGuns
2003-02-07 11:36
2003.03.03
Еще о музыке


14-5852
Oleg_Gashev
2003-02-14 02:37
2003.03.03
Скриншот почтового ящика Буша


1-5503
prorok2
2003-02-20 22:14
2003.03.03
Использование TTreeView в run-time