Главная страница
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.012 c
14-5733
CrowD
2003-02-12 12:17
2003.03.03
Список в несколько колонок?


3-5407
boa
2003-02-12 08:55
2003.03.03
Закрытие сессии по IdleTime


14-5843
Кот Бегемот
2003-02-12 17:11
2003.03.03
Потрясающе :) Какие же красивые девушки у нас в стране.


1-5489
msoftware
2003-02-19 08:41
2003.03.03
Взаимодействие Dll и приложений


14-5826
ZeroDivide
2003-02-11 14:21
2003.03.03
Самая лучшая защита программы от нелегального пользования.