Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
3-5432
Germes
2003-01-30 10:45
2003.03.03
Вопросик насчет установки готовой программы для работой с базами


1-5538
SergeN
2003-02-21 13:25
2003.03.03
console application


7-5897
Big_Rom
2003-01-02 19:41
2003.03.03
Глюк с os


14-5851
Brbr
2003-02-13 13:43
2003.03.03
Что такое модератор


1-5537
sndanil
2003-02-21 12:43
2003.03.03
Графики




   Наверх